~ubuntu-branches/ubuntu/oneiric/spass/oneiric

« back to all changes in this revision

Viewing changes to SPASS/rules-red.h

  • Committer: Bazaar Package Importer
  • Author(s): Roland Stigge
  • Date: 2010-06-27 18:59:28 UTC
  • mfrom: (1.1.1 upstream)
  • Revision ID: james.westby@ubuntu.com-20100627185928-kdjuqghv04rxyqmc
Tags: 3.7-1
New upstream release

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
/**************************************************************/
 
2
/* ********************************************************** */
 
3
/* *                                                        * */
 
4
/* *                REDUCTION RULES                         * */
 
5
/* *                                                        * */
 
6
/* *  $Module:   REDRULES                                   * */ 
 
7
/* *                                                        * */
 
8
/* *  Copyright (C) 1996, 1997, 1998, 1999, 2000            * */
 
9
/* *  MPI fuer Informatik                                   * */
 
10
/* *                                                        * */
 
11
/* *  This program is free software; you can redistribute   * */
 
12
/* *  it and/or modify it under the terms of the FreeBSD    * */
 
13
/* *  Licence.                                              * */
 
14
/* *                                                        * */
 
15
/* *  This program is distributed in the hope that it will  * */
 
16
/* *  be useful, but WITHOUT ANY WARRANTY; without even     * */
 
17
/* *  the implied warranty of MERCHANTABILITY or FITNESS    * */
 
18
/* *  FOR A PARTICULAR PURPOSE.  See the LICENCE file       * */
 
19
/* *  for more details.                                     * */
 
20
/* *                                                        * */
 
21
/* *                                                        * */
 
22
/* $Revision: 1.4 $                                         * */
 
23
/* $State: Exp $                                            * */
 
24
/* $Date: 2010-02-22 14:09:59 $                             * */
 
25
/* $Author: weidenb $                                       * */
 
26
/* *                                                        * */
 
27
/* *             Contact:                                   * */
 
28
/* *             Christoph Weidenbach                       * */
 
29
/* *             MPI fuer Informatik                        * */
 
30
/* *             Stuhlsatzenhausweg 85                      * */
 
31
/* *             66123 Saarbruecken                         * */
 
32
/* *             Email: spass@mpi-inf.mpg.de                * */
 
33
/* *             Germany                                    * */
 
34
/* *                                                        * */
 
35
/* ********************************************************** */
 
36
/**************************************************************/
 
37
 
 
38
 
 
39
/* $RCSfile: rules-red.h,v $ */
 
40
 
 
41
#ifndef _REDRULES_
 
42
#define _REDRULES_
 
43
 
 
44
#include "sort.h"
 
45
#include "subsumption.h"
 
46
#include "condensing.h"
 
47
#include "search.h"
 
48
#include "rules-split.h"
 
49
#include "rules-inf.h"
 
50
#include "doc-proof.h"
 
51
#include "clock.h"
 
52
#include "closure.h"
 
53
 
 
54
/**************************************************************/
 
55
/* Macros                                                     */
 
56
/**************************************************************/
 
57
#define CRW_CHECK_STACK stack_SIZE - ((stack_SIZE / 100) * 10)
 
58
 
 
59
/**************************************************************/
 
60
/* Constants                                                  */
 
61
/**************************************************************/
 
62
 
 
63
extern const NAT red_USABLE;
 
64
extern const NAT red_WORKEDOFF;
 
65
extern const NAT red_ALL;
 
66
 
 
67
 
 
68
/**************************************************************/
 
69
/* Functions                                                  */
 
70
/**************************************************************/
 
71
 
 
72
static __inline__ BOOL red_WorkedOffMode(NAT Mode)
 
73
{
 
74
  return (Mode == red_WORKEDOFF || Mode == red_ALL);
 
75
}
 
76
 
 
77
static __inline__ BOOL red_OnlyWorkedOffMode(NAT Mode)
 
78
{
 
79
  return (Mode == red_WORKEDOFF);
 
80
}
 
81
 
 
82
static __inline__ BOOL red_UsableMode(NAT Mode)
 
83
{
 
84
  return (Mode == red_USABLE || Mode == red_ALL);
 
85
}
 
86
 
 
87
static __inline__ BOOL red_AllMode(NAT Mode)
 
88
{
 
89
  return (Mode == red_ALL);
 
90
}
 
91
 
 
92
 
 
93
void   red_Init(void);
 
94
void   red_Free(void);
 
95
 
 
96
 
 
97
LIST   red_CompleteReductionOnDerivedClauses(PROOFSEARCH, LIST, NAT, int, NAT, int*);
 
98
CLAUSE red_ReductionOnDerivedClause(PROOFSEARCH, CLAUSE, NAT);
 
99
CLAUSE red_CompleteReductionOnDerivedClause(PROOFSEARCH, CLAUSE, NAT);
 
100
LIST   red_BackReduction(PROOFSEARCH, CLAUSE, NAT);
 
101
LIST   red_SatUnit(PROOFSEARCH, LIST);
 
102
LIST   red_SatInput(PROOFSEARCH);
 
103
LIST   red_ReduceInput(PROOFSEARCH, LIST);
 
104
BOOL   red_ClauseDeletion(SORTTHEORY, CLAUSE, FLAGSTORE, PRECEDENCE);
 
105
BOOL   red_ExplicitTautology(CLAUSE, FLAGSTORE, PRECEDENCE);
 
106
 
 
107
 
 
108
void   red_CheckSplitSubsumptionCondition(PROOFSEARCH);
 
109
 
 
110
 
 
111
unsigned long red_GetCRwCalls();
 
112
unsigned long red_GetCRwSucceeded();
 
113
 
 
114
 
 
115
 
 
116
#endif