public static List <GenericInstantiator.EdgeAggregator> CreateTransitiveParallel(Parallel parallel1, Parallel parallel2) { annotation.active = EngineUIBridge.JustificationSwitch.TRANSITIVE_PARALLEL; List <GenericInstantiator.EdgeAggregator> newGrounded = new List <GenericInstantiator.EdgeAggregator>(); // // Create the antecedent clauses // List <GroundedClause> antecedent = new List <GroundedClause>(); antecedent.Add(parallel1); antecedent.Add(parallel2); // // Create the consequent clause // Segment shared = parallel1.SharedSegment(parallel2); AlgebraicParallel newAP = new AlgebraicParallel(parallel1.OtherSegment(shared), parallel2.OtherSegment(shared)); newGrounded.Add(new GenericInstantiator.EdgeAggregator(antecedent, newAP, annotation)); return(newGrounded); }
public override bool Equals(Object obj) { AlgebraicParallel gp = obj as AlgebraicParallel; if (gp == null) { return(false); } return(base.Equals(obj)); }
public static List<GenericInstantiator.EdgeAggregator> CreateTransitiveParallel(Parallel parallel1, Parallel parallel2) { annotation.active = EngineUIBridge.JustificationSwitch.TRANSITIVE_PARALLEL; List<GenericInstantiator.EdgeAggregator> newGrounded = new List<GenericInstantiator.EdgeAggregator>(); // // Create the antecedent clauses // List<GroundedClause> antecedent = new List<GroundedClause>(); antecedent.Add(parallel1); antecedent.Add(parallel2); // // Create the consequent clause // Segment shared = parallel1.SharedSegment(parallel2); AlgebraicParallel newAP = new AlgebraicParallel(parallel1.OtherSegment(shared), parallel2.OtherSegment(shared)); newGrounded.Add(new GenericInstantiator.EdgeAggregator(antecedent, newAP, annotation)); return newGrounded; }