Google OR-Tools v9.9
a fast and portable software suite for combinatorial optimization
Loading...
Searching...
No Matches
Google.OrTools.Sat.CircuitConstraintProto Class Referencesealed

The circuit constraint is defined on a graph where the arc presence are controlled by literals. Each arc is given by an index in the tails/heads/literals lists that must have the same size. More...

Inheritance diagram for Google.OrTools.Sat.CircuitConstraintProto:

Public Member Functions

 CircuitConstraintProto ()
 
 CircuitConstraintProto (CircuitConstraintProto other)
 
CircuitConstraintProto Clone ()
 
override bool Equals (object other)
 
bool Equals (CircuitConstraintProto other)
 
override int GetHashCode ()
 
override string ToString ()
 
void WriteTo (pb::CodedOutputStream output)
 
int CalculateSize ()
 
void MergeFrom (CircuitConstraintProto other)
 
void MergeFrom (pb::CodedInputStream input)
 

Static Public Attributes

const int TailsFieldNumber = 3
 Field number for the "tails" field.
 
const int HeadsFieldNumber = 4
 Field number for the "heads" field.
 
const int LiteralsFieldNumber = 5
 Field number for the "literals" field.
 

Properties

static pb::MessageParser< CircuitConstraintProtoParser [get]
 
static pbr::MessageDescriptor Descriptor [get]
 
pbc::RepeatedField< int > Tails [get]
 
pbc::RepeatedField< int > Heads [get]
 
pbc::RepeatedField< int > Literals [get]
 

Detailed Description

The circuit constraint is defined on a graph where the arc presence are controlled by literals. Each arc is given by an index in the tails/heads/literals lists that must have the same size.

For now, we ignore node indices with no incident arc. All the other nodes must have exactly one incoming and one outgoing selected arc (i.e. literal at true). All the selected arcs that are not self-loops must form a single circuit. Note that multi-arcs are allowed, but only one of them will be true at the same time. Multi-self loop are disallowed though.

Definition at line 3198 of file CpModel.pb.cs.

Constructor & Destructor Documentation

◆ CircuitConstraintProto() [1/2]

Google.OrTools.Sat.CircuitConstraintProto.CircuitConstraintProto ( )
inline

Definition at line 3223 of file CpModel.pb.cs.

◆ CircuitConstraintProto() [2/2]

Google.OrTools.Sat.CircuitConstraintProto.CircuitConstraintProto ( CircuitConstraintProto other)
inline

Definition at line 3231 of file CpModel.pb.cs.

Member Function Documentation

◆ CalculateSize()

int Google.OrTools.Sat.CircuitConstraintProto.CalculateSize ( )
inline

Definition at line 3347 of file CpModel.pb.cs.

◆ Clone()

CircuitConstraintProto Google.OrTools.Sat.CircuitConstraintProto.Clone ( )
inline

Definition at line 3240 of file CpModel.pb.cs.

◆ Equals() [1/2]

bool Google.OrTools.Sat.CircuitConstraintProto.Equals ( CircuitConstraintProto other)
inline

Definition at line 3285 of file CpModel.pb.cs.

◆ Equals() [2/2]

override bool Google.OrTools.Sat.CircuitConstraintProto.Equals ( object other)
inline

Definition at line 3279 of file CpModel.pb.cs.

◆ GetHashCode()

override int Google.OrTools.Sat.CircuitConstraintProto.GetHashCode ( )
inline

Definition at line 3300 of file CpModel.pb.cs.

◆ MergeFrom() [1/2]

void Google.OrTools.Sat.CircuitConstraintProto.MergeFrom ( CircuitConstraintProto other)
inline

Definition at line 3360 of file CpModel.pb.cs.

◆ MergeFrom() [2/2]

void Google.OrTools.Sat.CircuitConstraintProto.MergeFrom ( pb::CodedInputStream input)
inline

Definition at line 3372 of file CpModel.pb.cs.

◆ ToString()

override string Google.OrTools.Sat.CircuitConstraintProto.ToString ( )
inline

Definition at line 3313 of file CpModel.pb.cs.

◆ WriteTo()

void Google.OrTools.Sat.CircuitConstraintProto.WriteTo ( pb::CodedOutputStream output)
inline

Definition at line 3319 of file CpModel.pb.cs.

Member Data Documentation

◆ HeadsFieldNumber

const int Google.OrTools.Sat.CircuitConstraintProto.HeadsFieldNumber = 4
static

Field number for the "heads" field.

Definition at line 3256 of file CpModel.pb.cs.

◆ LiteralsFieldNumber

const int Google.OrTools.Sat.CircuitConstraintProto.LiteralsFieldNumber = 5
static

Field number for the "literals" field.

Definition at line 3267 of file CpModel.pb.cs.

◆ TailsFieldNumber

const int Google.OrTools.Sat.CircuitConstraintProto.TailsFieldNumber = 3
static

Field number for the "tails" field.

Definition at line 3245 of file CpModel.pb.cs.

Property Documentation

◆ Descriptor

pbr.MessageDescriptor Google.OrTools.Sat.CircuitConstraintProto.Descriptor
staticget

Definition at line 3211 of file CpModel.pb.cs.

◆ Heads

pbc.RepeatedField<int> Google.OrTools.Sat.CircuitConstraintProto.Heads
get

Definition at line 3262 of file CpModel.pb.cs.

◆ Literals

pbc.RepeatedField<int> Google.OrTools.Sat.CircuitConstraintProto.Literals
get

Definition at line 3273 of file CpModel.pb.cs.

◆ Parser

pb.MessageParser<CircuitConstraintProto> Google.OrTools.Sat.CircuitConstraintProto.Parser
staticget

Definition at line 3207 of file CpModel.pb.cs.

◆ Tails

pbc.RepeatedField<int> Google.OrTools.Sat.CircuitConstraintProto.Tails
get

Definition at line 3251 of file CpModel.pb.cs.


The documentation for this class was generated from the following file: