#include "clause2.h"

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

Contents


Public Routines in File clause2.c

Index

delete_clausedemod_clausemake_clause_basic
delete_clistfdemod_clause

Details


void delete_clause(Clause c);
This routine frees a clause and all of its subterms. If the clause has an ID, it is unassigned. If the clause has a justification list, it is freed.

This routine is not in the clause package, because (at this time) the clause package doesn't know about just.h or clauseid.h.


void delete_clist(Clist l);
For each Clause in the Clist, remove it from the Clist; if it occurs in no other Clists, call delete_clause(). Finally, free the Clist.

This routine is not in the clist package, because (at this time) the clist package doesn't know about just.h or clauseid.h.


void demod_clause(Clause c, Mindex idx);
Demodulate Clause c, using demodulators in Mindex idx. If any rewriting occurs, the justification is appended to the clause's existing justification.
void fdemod_clause(Clause c, Mindex idx, int *limit);
Demodulate Clause c, using demodulators in Mindex idx. If any rewriting occurs, the justification is appended to the clause's existing justification.

This version uses flatterm retrievel.


void make_clause_basic(Clause c);
This routine clears all of the "nonbasic" marks in a clause.

Public Definitions in File clause2.h


Introduction

These are a few clause utilities that don't fit into clause package, because they use things that the clause package doesn't know about.

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