private void HandleInitKnowledge(PlanningParser.InitKnowledgeContext context) { CUDD.Ref(_exclusiveAxiom); //Console.WriteLine("Exclusive axiom:"); //CUDD.Print.PrintMinterm(_exclusiveAxiom); if (context != null) { StringDictionary assignment = new StringDictionary(); InitKnowledge = context.gd().GetCuddNode(_predicateDict, assignment); InitKnowledge = CUDD.Function.And(_exclusiveAxiom, InitKnowledge); } else { InitKnowledge = _exclusiveAxiom; } }
/// <summary> /// Exit a parse tree produced by <see cref="PlanningParser.initKnowledge"/>. /// <para>The default implementation does nothing.</para> /// </summary> /// <param name="context">The parse tree.</param> public virtual void ExitInitKnowledge([NotNull] PlanningParser.InitKnowledgeContext context) { }
public override void EnterInitKnowledge(PlanningParser.InitKnowledgeContext context) { Problem.GenerateKnowledge(context.gdName()); }