void copyConsTest() { char str[100]; while (gets(str)) { Parser p(str); Formula *f = p.parse(); f->print(); puts(""); Predicate *pred = f->getPredicate(); Term *t = pred->getTermList()->getList()->at(0); puts("here"); Term w = *t; w.print(); puts("here"); w.setName("chan"); w.print(); puts(""); f->print(); puts(""); } }
void formulaTest() { TermList *list = new TermList(); list->addTerm(new Term(Term::VAR, "x")); list->addTerm(new Term(Term::VAR, NULL)); list->addTerm(new Term(Term::CONS, "A")); Formula *f = new Formula(new Predicate("P", list)); Formula *g = new Formula(f); Formula *q = new Formula(f, g, '&'); Formula *r = new Formula(new Term(Term::VAR, NULL), q, Formula::UNIV); r->print(); Term *x = new Term(Term::VAR, "xy"); Term *y = new Term(Term::VAR, "x"); TermList *list2 = new TermList(); list2->addTerm(x); list2->addTerm(y); Term *f2 = new Term("f10", list2); Term *g2 = new Term("f10", list2); f2->print(); puts(""); g2->print(); puts(""); if (!(*f2 != *g2)) { printf("yes! equal!"); } }
void parseTest() { char str[100]; while (gets(str)) { Parser p(str); Formula *f = p.parse(); f->print(); formulaFeatureTest(f); } }
void Prover::print(std::queue<Formula*> &q, int tabCount) { puts("\n"); this->printTab(tabCount); printf("========================\n"); int sz = q.size(); for (int i = 0; i < sz; i++) { Formula *f = q.front(); q.pop(); this->printTab(tabCount+1); printf("(%d):\t", i+1); f->print(); puts(""); q.push(f); } this->printTab(tabCount); printf("========================\n"); }