eq_atom | mark_renamable_flip | pos_eq_unit | term_compare_primary |
eq_tautology | orient_equalities | renamable_flip_eq | |
mark_oriented_eq | oriented_eq | same_term_structure |
BOOL eq_atom(Term a);This function checks if an atom is an equality atom (positive or negative) for the purposes of paramodulation and demodulation.
BOOL eq_tautology(Clause c);This routine returns TRUE if the clause has any literals of the form t=t.
void mark_oriented_eq(Term atom);This routine marks an atom as an oriented equality.
void mark_renamable_flip(Term atom);This routine marks an atom as "renamable_flip".
void orient_equalities(Clause c);For each equality literal (positive or negative) of Clause c, compare the arguments; if the left is greater, mark the atom as oriented, and if the the right is greater, flip the arguments (add a note about flipping to the justification), and mark the atom as oriented.
(What ordering method will be used???
BOOL oriented_eq(Term atom);This function checks if an atom is an oriented equality atom. (The terms are not actually compared. Only the mark is checked.)
BOOL pos_eq_unit(Clause c);This function checks if a clause is a positive equality unit for the purposes of paramodulation and demodulation.
BOOL renamable_flip_eq(Term atom);This function checks if an atom is a renamable_flip equality atom. (The terms are not actually compared. Only the mark is checked.)
BOOL same_term_structure(Term t1, Term t2);Do terms t1 and t2 have the same structure? That is, if we rename all variables to x, are t1 and t2 identical?
Ordertype term_compare_primary(Term alpha, Term beta);Compare two terms with LRPO. Return GREATER_THAN, LESS_THAN, or NOT_COMPARABLE.
These activities are projects of the Mathematics and Computer Science Division of Argonne National Laboratory.