#include "parautil.h"

This page has information from files parautil.h and parautil.c.

Contents


Public Routines in File parautil.c

Index

eq_atommark_oriented_eqoriented_eq
extendorient_equalitiespos_eq_unit

Details


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.
Term extend(Term atom, Term arg, int flag);
Atom is an equality, and arg is one of its two arguments. If the arg side of the atom is AC-extendable, return extended atom, else return NULL.

(A term is AC-extendable if the root symbol is AC, and it does not have a lone variable as an AC argument.)

The extended atom is an entirely new copy.


void mark_oriented_eq(Term atom);
This routine marks an atom as an oriented equality.
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.

Public Definitions in File parautil.h


Introduction

This package contains a few utilites for paramodulation and demodulation.

These activities are projects of the Mathematics and Computer Science Division of Argonne National Laboratory.