Schematic Refutations of Formula Schemata

02/21/2019 ∙ by David Cerna, et al. ∙ Johannes Kepler University Linz Logic Industries 0

Proof schemata are infinite sequences of proofs which are defined inductively. In this paper we present a general framework for schemata of terms, formulas and unifiers and define a resolution calculus for schemata of quantifier-free formulas. The new calculus generalizes and improves former approaches to schematic deduction. As an application of the method we present a schematic refutation formalizing a proof of a weak form of the pigeon hole principle.



There are no comments yet.


page 1

page 2

page 3

page 4

This week in AI

Get the week's most popular data science and artificial intelligence research sent straight to your inbox every Saturday.

1 Introduction

Recursive definitions of functions play a central role in computer science, particularly in functional programming. While recursive definitions of proofs are less common they are of increasing importance in automated proof analysis. Proof schemata, i.e. recursively defined infinite sequences of proofs, serve as an alternative formulation of induction. Prior to the formalization of the concept, an analysis of Fürstenberg’s proof of the infinitude of primes [2] suggested the need for a formalism quite close to the type of proof schemata we will discuss in this paper. The underlying method for this analysis was CERES [3] (cut-elimination by resolution) which, unlike reductive cut-elimination, can be applied to recursively defined proofs by extracting a schematic unsatisfiable formula and constructing a recursively defined refutation. Moreover, Herbrand’s theorem can be extended to an expressive fragment of proof schemata, that is those formalizing -induction [7, 9]. Unfortunately, the construction of recursively defined refutations is a highly complex task. In previous work [9] a superposition calculus for certain types of formulas was used for the construction of refutation schemata, but only works for a weak fragment of arithmetic and is hard to use interactively.

The key to proof analysis using CERES in a first-order setting is not the particularities of the method itself, but the fact that it provides a bridge between automated deduction and proof theory. In the schematic setting, where the proofs are recursively defined, a bridge over the chasm has been provided  [7, 9], but there has not been much development on the other side to reap the benefits of. The few existing results about automated deduction for recursively defined formulas barely provide the necessary expressive power to analyse significant mathematical argumentation. Applying the earlier constructions to a weak mathematical statement such as the eventually constant schema required much more work than the value of the provided insights [6]. The resolution calculus we introduce in this work generalizes resolution and the first-order language in such a way that it provides an excellent environment for carrying out investigations into decidable fragments of schematic formulas beyond those that are known. Furthermore, concerning the general unsatisfiability problem for schematic formulas, our formalism provides a perfect setting for interactive proof construction.

Proof schema is not the first alternative formalization of induction with respect to Peano arithmetic [12]. However, all other existing examples [4, 5, 10] that provide calculi for induction together with a cut-elimination procedure do not allow the extraction of Herbrand sequents111Herbrand sequents allow the representation of the propositional content of first-order proofs. [8, 12] and thus Herbrand’s theorem cannot be realized. In contrast, in [9] finite representations of infinite sequences of Herbrand sequents are constructed, so-called Herbrand systems. Of course, such objects do not describe finite sets of ground instances, though instantiating the free parameters of Herbrand systems does result in sequents derivable from a finite set of ground instances.

The formalism developed in this paper extends and improves the formal framework for refuting formula schemata in [7, 9] in several ways: 1. The new calculus can deal with arbitrary quantifier-free formula schemata (not only with clause schemata), 2. we extend the schematic formalism to multiple parameters (in [7] and in [9] only schemata defined via one parameter were admitted); 3. we strongly extend the recursive proof specifications by allowing mutual recursion (formalizable by so-called call graphs). Note that in [7] a complicated schematic clause definition was used, while the schematic refutations in [9] were based on negation normal forms and on a complicated translation to the -clause calculus. Moreover, the new method presented in this paper provides a simple, powerful and elegant formalism for interactive use. The expressivity of the method is illustrated by an application to a (weak) version of the pigeon hole principle.

2 Schematic Language

We work in a two-sorted version of classical first-order logic. The first sort we consider is , in which every term normalizes to a numeral, i.e. a term inductively constructable by , such that and . Numerals will be denoted by lower-case Greek letters (, , , etc); for the numeral and we write . The set of numerals is denoted by . Furthermore, the sort includes a countable set of variables called parameters. We denote parameters by . The set of parameters occurring in an expression is denoted by .

The second sort, the -sort (individuals), is a standard first-order term language extended by defined function symbols. Defined function symbols, i.e. primitive recursively defined functions, will be denoted with .

We consider the following types of variables and corresponding infinite sets, namely, , the set of global variables of type , and , the set of formula variables of type . The set of individual variables is then defined as . Let and then we define iff and .

For terms we consider the set of function symbols of type , . The set of defined function symbols of type is denoted by . The types are either of the form (for ) which we call numeric types or of type for which we call invidual types. We distinguish - the set of all defined function symbols of numeric type and - the set of all defined function symbols of individual type. We define for all other numeric types . For all other types the sets are infinite; moreover all sets for are infinite, . The symbols in and are partially ordered by where is irreflexive, transitive and Noetherian.

We define a similar signature for predicate symbols of type , where is the (infinite) set of predicate symbols of type ; the set of defined predicate symbols of type is denoted by . For ordinary (-ary) predicate symbols the types are as usual. For defined predicate symbols we make use of global variables: the types are here for . The symbols in are partially ordered by where is irreflexive, transitive and Noetherian.

For the term language we consider -terms of type and -terms of type . Both term sets are defined via function symbols and defined function symbols.

Definition 1 (-terms )

  • , and if then ,

  • if for and then .

The set denotes terms constructed using (1). Note that the set of parameter-free terms in is , the set of numerals.

For every defined function symbol there exists a set of defining equations which expresses a primitive recursive definition of .

Definition 2 (defining equations for numeric function symbols)

For every , we define a set consisting of two equations.
Let be minimal in and . Then consists of the equations

where for minimal , for nonminimal where may contain only defined function symbols smaller than in . Furthermore , and .

We define , which is the set of all defining equations in the numeric types.

Example 1

For , , , .
Let for , be minimal and . We define as

for and . Then, obviously, defines .
Now we define as

where and . Then defines .

It is easy to see that, given any parameter assignment, all terms in evaluate to numerals.

Definition 3 (parameter assignment)

A function is called a parameter assigment. is extended to terms homomorphically:

  • for numerals .

  • for and .

The set of all parameter assigments is denoted by .

To simplify notation we use the following convention: if and we write for .

Definition 4 (rewrite system )

Let . Then is the set of the following rewrite rules obtained from :

. When a numeric term rewrites to under we write .

Proposition 1


  • is a canonical rewrite system.

  • Let and . Then the (unique) normal form of under (denoted by ) is a numeral .


Straightforward: termination and confluence of ) are well known. In particular and define a language for computing the set of primitive recursive functions; in particular the recursions are well founded. A formal proof of termination requires double induction on and the value of the recursion parameter.

Definition 5 (the -terms )

The set is defined inductively as follows:

  • all constants of type are in ,

  • for all and . We call the expression (which is of type ) a -term. We define the set of -terms as .

  • if , , , then ,

  • if , , , then .

The set of all terms in which contain no defined symbols and neither parameters nor numerals is denoted by . is a set of “ordinary” first-order terms.

Definition 6 (defining equations for -symbols)

Let for . The defining equations are defined below.

where . For minimal is a term of type with , } and contains no defined symbols from for nonnumeric types . For nonminimal , may contain defined symbols of type with .
is a term of with where , and . For all defined symbols of type occurring in we must have .
Like for the numeric terms we define .

Example 2

Let and . We define as

Here, .

While numeric terms evaluate to numerals under parameter assignments, terms in evaluate to terms in , i.e. to ordinary first-order terms. Like for the terms in the evaluation is defined via a rewrite system.

Definition 7 (rewrite system )

Let . Then is the set of the following rewrite rules obtained from :

If a term rewrites to under we write .

Proposition 2

is a canonical rewrite system.


That is strongly normalizing and locally confluent can be shown in the same way as for .

To evaluate a term under to a numeral we have to combine and .

Definition 8 (evaluation of )

Let and . We define :

  • if is a constants of type then .

  • If then . Note that, by definition of .

  • if , , , then

  • if , , , then

Under a parameter assignment every term in evaluates to a first-order term:

Proposition 3

Let and then .


By induction on the complexity of the term definition and the fact that and are both terminating and confluent. For instance, let us consider the case defined above. By induction and we know from Proposition 1 that are numerals. So there are and such that reduces to

By induction on the value of we can easily show that .

Example 3


as in Example 3 and . Then

Substitutions on term schemata need to be schematic as well, particularly when we are interested in unification. We develop some formal tools below to describe such schemata.

Definition 9

Let . Then are called essentially distinct if for all .

Example 4

and are essentially distinct and so are and ; and are not essentially distinct (just use with and ).

Definition 10 (s-substitution)

Let be a finite set of pairs where and . is called an s-substitution if for all either or are essentially distinct. For we define

Proposition 4

For all and every s-substitution is a (first-order) substitution.


It is enough to show that for all for all . If this is obvious; if then, by definition of , and are essentially distinct and so . Then is indeed a substitution as for .

Example 5

The following s-substitution is associated with the proof provided in Example 13, in particular the proofs mapped to :

The application of an s-substitution to terms in is defined inductively on the complexity of term definitions as usual.

Definition 11 (s-unifier)

Let . An s-substitution is called an s-unifier of if for all . We refer to as s-unifiable if there exists an s-unifier of . s-unifiability can be extended to more than two terms and to formula schemata (to be defined below) in an obvious way.

Notice that the s-substitution of Example 5 is an s-unifier of and .

Formula schemata are defined in a way that also the number of variables in formulas can increase with the assigments of parameters. For this reason we use global variables in the definition.

Definition 12 (formula schemata ())

We define the set inductively:

  • Let be a formula variable in then .

  • Let and . Then

  • Let for , , then .

  • Let then .

  • If then and .

The subset of not containing defined predicate symbols is denoted by . The subset of containing no defined symbols at all and neither parameters nor numerals are denoted by . is a set of ordinary quantifier-free first-order formulas.

Definition 13 (defining equations for predicate symbols)

For every for we define a set of defining equations, where and . consists of

where, for a -minimal . If is not -minimal then such that for every occurring in we have . The only global variables and parameters occurring in are and respectively. The only global variables in are and besides may include a formula variable and a parameter . Like for and we define

The evaluation of a formula is denoted by and is defined inductively.

Definition 14

Let ; we define for .

  • Let be a formula variable in then .

  • Let and . Then

  • Let and . Let

    we distinguish two cases:
    (a) . Then

    for .
    (b) and . Then


  • .

  • for .

Proposition 5

Let and . Then .


If there are no defined predicate symbols in then, obviously, ; indeed, here only the cases (1),(2),(4) and (5) in Definition 14 apply.

If there are defined predicate symbols we proceed by induction on and the induction parameter.

Let be minimal in and let . We show that :

  • . Then, by Definition 14

    As is minimal the formula does not contain defined predicate symbols and so .

  • and . Here we have


    Note that itself does not contain defined predicate symbols; in we have the symbol but with . Therefore we proceed by induction on the value of and infer that also .

If is not minimal the base case for involves only smaller defined predicate symbols. So by induction on we get the desired result.

Definition 15 (unsatisfiable schemata)

Let . Then is called unsatisfiable if for all the formula is unsatisfiable.

Example 6

Let be a constant symbol of type , , as in Example 3, for , and for . Concerning the ordering we have . The defining equations for and are:

It is easy to see that the schema is unsatisfiable. We compute for with :

Note that, for the number of different variables in is ; so the number of variables increases with the parameter assignments.

Let us consider the schematic formula representation of the 1-Strict Monotone Assertion (1-SMA), a weak variant of the Infinitary Pigeonhole Principle (IPP). Mathematically, the concept of Strict monotonicity can be understood as follows:

Definition 16

A total monotonically decreasing (increasing) function is said to be be -strict monotone decreasing (increasing) if there exists at least values in s.t. for .

Notice that for a function from , this concept is non-trivial, however restricting our range to results in a trivial but combinatorially complex statement, namely, the following:

Theorem 2.1

-strict monotone Assertion (1-SMA) Every total monotonically decreasing function is at least -strict monotone decreasing.

1-SMA is closely related to the eventually constant schema (ECS) discussed in [6]. However, 1-SMA uses a weaker cut ( vs. ) which paradoxically makes construction of a finite representation harder, i.e. mutual proof calls are necessary within the finite representation. Formalizations of the ECS222 Using the current release, execute the following to construct the proof for :
      import gapt.examples.EventuallyConstantSchema
      import gapt.examples.EventuallyConstantSchema.ctx
      val proof = instantiateProof.Instantiate( le"omega (s (s 0)) " )
and the 1-SMA333 Same as in Footnote 2 but with the following imports:
      import gapt.examples.OneStrictMonotoneSchema
      import gapt.examples.OneStrictMonotoneSchema.ctx
can be found within the GAPT system444 An NNF formula representing the cut structure of an instance proof can also be extracted555After executing the commands of Footnote 3, following commands extract an instance of the characteristic NNF formula (the running example in this work):
     val str = StructCreators.extract( proof )( ctx )
     val csf = Sequent(Seq(CharFormN(str)),Seq())

Example 7

The recursive NNF formula representation of the 1-SMA cut structure uses defined predicate symbols of type where and contain symbols , , . is defined via and , where and is defined via and