nogen include "../scg/scg.cd"; package nwf; import scg.*; import edu.neu.ccs.demeterf.lib.*; import edu.neu.ccs.demeterf.*; import java.util.Iterator; EdgeLabeledGraph(N,L1,L2) = List(Adjacency(N,L1,L2)). Adjacency(N,L1,L2) = *l N "successors" "(" + List(NodeAndLabel(N,L1,L2)) - ")". NodeAndLabel(N,L1,L2) = *l N *s L1 *s L2. NWFInstance = // Instance, NWF means NetworkFlow "instance" EdgeLabeledGraph(Node, EdgeCapacity, EdgeFlow) "source" Node "sink" Node implements InstanceI. Node = String. EdgeCapacity = "c" *s int. NWFSolution = // the flow for this NWFInstance "solution" EdgeLabeledGraph(Node, EdgeCapacity, EdgeFlow) "source" Node "sink" Node implements SolutionI. EdgeFlow = "f" *s int. NWFDomain = implements DomainI. NWFConfig = "nwf_config[" *l*t "maxN:" *s int //maximum node number in Instance allowed *l "]" implements DomainConfigI. NWFInstanceSet = NWFInstance implements InstanceSetI.