gapt.examples

package gapt.examples

Members list

Type members

Classlikes

object BussTautology

Creates the n-th tautology of a sequence that has only exponential-size cut-free proofs

Creates the n-th tautology of a sequence that has only exponential-size cut-free proofs

This sequence is taken from: S. Buss. "Weak Formal Systems and Connections to Computational Complexity". Lecture Notes for a Topics Course, UC Berkeley, 1988, available from: http://www.math.ucsd.edu/~sbuss/ResearchWeb/index.html

Attributes

Supertypes
class Object
trait Matchable
class Any
Self type
object CASCData

Attributes

Supertypes
class Object
trait Matchable
class Any
Self type
CASCData.type

Attributes

Supertypes
class Object
trait Matchable
class Any
Self type

Attributes

Supertypes
class Object
trait Matchable
class Any
Self type

Sequence of valid first-order formulas about equivalent counting methods.

Sequence of valid first-order formulas about equivalent counting methods.

Consider the formula ∀z ∃^=1^i ∀x ∃y a_i(x,y,z), where ∃^=1^i is a quantifier that says that there exists exactly one i (in 0..n) such that ∀x ∃y a_i(x,y,z) is true.

This function returns the equivalence between two implementations of the formula: first, using a naive quadratic implementation; and second, using an O(n*log(n)) implementation with threshold formulas.

Attributes

Supertypes
class Object
trait Matchable
class Any
Self type
object ECSJumpSchema extends TacticsProof

Attributes

Supertypes
class TacticsProof
class TacticsProof0
class Object
trait Matchable
class Any
Self type
object EventuallyConstantSchema extends TacticsProof

Attributes

Supertypes
class TacticsProof
class TacticsProof0
class Object
trait Matchable
class Any
Self type
object EventuallyConstantSchemaInductionRefutation extends TacticsProof

Attributes

Supertypes
class TacticsProof
class TacticsProof0
class Object
trait Matchable
class Any
Self type
object EventuallyConstantSchemaRefutation extends TacticsProof

Attributes

Supertypes
class TacticsProof
class TacticsProof0
class Object
trait Matchable
class Any
Self type
object ExponentialCompression extends TacticsProof

Attributes

Supertypes
class TacticsProof
class TacticsProof0
class Object
trait Matchable
class Any
Self type
object FirstSchema0 extends TacticsProof

Attributes

Supertypes
class TacticsProof
class TacticsProof0
class Object
trait Matchable
class Any
Self type
object FirstSchema1 extends TacticsProof

Attributes

Supertypes
class TacticsProof
class TacticsProof0
class Object
trait Matchable
class Any
Self type
object FirstSchema2 extends TacticsProof

Attributes

Supertypes
class TacticsProof
class TacticsProof0
class Object
trait Matchable
class Any
Self type
object FirstSchema3 extends TacticsProof

Attributes

Supertypes
class TacticsProof
class TacticsProof0
class Object
trait Matchable
class Any
Self type
object FirstSchema4 extends TacticsProof

Attributes

Supertypes
class TacticsProof
class TacticsProof0
class Object
trait Matchable
class Any
Self type
object FirstSchema5 extends TacticsProof

Attributes

Supertypes
class TacticsProof
class TacticsProof0
class Object
trait Matchable
class Any
Self type
object FirstSchema6 extends TacticsProof

Attributes

Supertypes
class TacticsProof
class TacticsProof0
class Object
trait Matchable
class Any
Self type
object FirstSchema7 extends TacticsProof

Attributes

Supertypes
class TacticsProof
class TacticsProof0
class Object
trait Matchable
class Any
Self type
object FirstSchema8 extends TacticsProof

Attributes

Supertypes
class TacticsProof
class TacticsProof0
class Object
trait Matchable
class Any
Self type
object FirstSchema9 extends TacticsProof

Attributes

Supertypes
class TacticsProof
class TacticsProof0
class Object
trait Matchable
class Any
Self type
object Formulas

Contains some commonly used formulas.

Contains some commonly used formulas.

Attributes

Supertypes
class Object
trait Matchable
class Any
Self type
Formulas.type
object FourStrictMonotoneSchema extends TacticsProof

Attributes

Supertypes
class TacticsProof
class TacticsProof0
class Object
trait Matchable
class Any
Self type
object FunctionIterationRefutation extends TacticsProof

Attributes

Supertypes
class TacticsProof
class TacticsProof0
class Object
trait Matchable
class Any
Self type
object FunctionIterationRefutationPos extends TacticsProof

Attributes

Supertypes
class TacticsProof
class TacticsProof0
class Object
trait Matchable
class Any
Self type
object FunctionIterationSchema extends TacticsProof

Attributes

Supertypes
class TacticsProof
class TacticsProof0
class Object
trait Matchable
class Any
Self type
object GradedStrictMonotoneSchema extends TacticsProof

Attributes

Supertypes
class TacticsProof
class TacticsProof0
class Object
trait Matchable
class Any
Self type
object GradedStrictMonotoneSequenceRefutation extends TacticsProof

Attributes

Supertypes
class TacticsProof
class TacticsProof0
class Object
trait Matchable
class Any
Self type
object GradedStrictMonotoneSequenceSchema extends TacticsProof

Attributes

Supertypes
class TacticsProof
class TacticsProof0
class Object
trait Matchable
class Any
Self type
object MonoidCancellation extends TacticsProof

Monoid cancellation benchmark from Gregory Malecha and Jesper Bengtson: Extensible and Efficient Automation Through Reflective Tactics, ESOP 2016.

Monoid cancellation benchmark from Gregory Malecha and Jesper Bengtson: Extensible and Efficient Automation Through Reflective Tactics, ESOP 2016.

Attributes

Supertypes
class TacticsProof
class TacticsProof0
class Object
trait Matchable
class Any
Self type
object NdiffSchema extends TacticsProof

Attributes

Supertypes
class TacticsProof
class TacticsProof0
class Object
trait Matchable
class Any
Self type
object NiaSchema extends TacticsProof

Attributes

Supertypes
class TacticsProof
class TacticsProof0
class Object
trait Matchable
class Any
Self type
NiaSchema.type
object NiaSchemaRefutation extends TacticsProof

Attributes

Supertypes
class TacticsProof
class TacticsProof0
class Object
trait Matchable
class Any
Self type
object OneStrictMonotoneRefutation extends TacticsProof

Attributes

Supertypes
class TacticsProof
class TacticsProof0
class Object
trait Matchable
class Any
Self type
object OneStrictMonotoneSchema extends TacticsProof

Attributes

Supertypes
class TacticsProof
class TacticsProof0
class Object
trait Matchable
class Any
Self type
object OneStrictMonotoneSequenceRefutation extends TacticsProof

Attributes

Supertypes
class TacticsProof
class TacticsProof0
class Object
trait Matchable
class Any
Self type
object OneStrictMonotoneSequenceSchema extends TacticsProof

Attributes

Supertypes
class TacticsProof
class TacticsProof0
class Object
trait Matchable
class Any
Self type
object PQPairs

Creates the n-th formula of a sequence where distributivity-based algorithm produces only exponential CNFs.

Creates the n-th formula of a sequence where distributivity-based algorithm produces only exponential CNFs.

Attributes

Supertypes
class Object
trait Matchable
class Any
Self type
PQPairs.type
object Permutations

Given n >= 2 creates an unsatisfiable first-order clause set based on a statement about the permutations in S_n.

Given n >= 2 creates an unsatisfiable first-order clause set based on a statement about the permutations in S_n.

Attributes

Supertypes
class Object
trait Matchable
class Any
Self type
object Pi2Pigeonhole extends TacticsProof

Attributes

Supertypes
class TacticsProof
class TacticsProof0
class Object
trait Matchable
class Any
Self type
object Pi3Pigeonhole extends TacticsProof

Attributes

Supertypes
class TacticsProof
class TacticsProof0
class Object
trait Matchable
class Any
Self type

Constructs a formula representing the pigeon hole principle. More precisely: PigeonHolePrinciple( p, h ) states that if p pigeons are put into h holes then there is a hole which contains two pigeons. PigeonHolePrinciple( p, h ) is a tautology iff p > h.

Constructs a formula representing the pigeon hole principle. More precisely: PigeonHolePrinciple( p, h ) states that if p pigeons are put into h holes then there is a hole which contains two pigeons. PigeonHolePrinciple( p, h ) is a tautology iff p > h.

Since we want to avoid empty disjunctions, we assume > 1 pigeons.

Attributes

Supertypes
class Object
trait Matchable
class Any
Self type
object ReductionDemo extends Script

Attributes

Supertypes
class Script
trait App
trait DelayedInit
class Object
trait Matchable
class Any
Show all
Self type
object ReforestDemo extends Script

Attributes

Supertypes
class Script
trait App
trait DelayedInit
class Object
trait Matchable
class Any
Show all
Self type
class Script extends App

Attributes

Supertypes
trait App
trait DelayedInit
class Object
trait Matchable
class Any
Known subtypes
object addition.type
object array_init.type
object classicalPairing.type
object cut1.type
object cut2.type
object definitionLeftRule.type
object definitionRightRule.type
object definitionRightRule2.type
object demorgan1.type
object demorgan2.type
object dne.type
object equalityLeft.type
object equalityLeftEmptySuc.type
object equalityRight.type
object ex0_1_6.type
object ex0_1_6_short.type
object example1.type
object impLeft1.type
object impLeft2.type
object impRight1.type
object impRight2.type
object induction.type
object inductionRule.type
object issue687.type
object issue688.type
object lem.type
object negLeft.type
object negLeftRight1.type
object negRight1.type
object orLeft1.type
object orLeft2.type
object orLeft3.type
object orLeft4.type
object orLeft5.type
object orRight1.type
object orRight2.type
object proofLink.type
object proofLink2.type
object proofLink3.type
object weakenContractRight1.type
object weakeningRight.type
object weakeningRight1.type
object weakeningRight2.type
object cutintro.type
object vtrat_comparison.type
object ReductionDemo.type
object ReforestDemo.type
object epsilon.type
object instprover.type
Show all
object SimpleMutualInductionSchema extends TacticsProof

Attributes

Supertypes
class TacticsProof
class TacticsProof0
class Object
trait Matchable
class Any
Self type
object StrictMonotoneSchema extends TacticsProof

Attributes

Supertypes
class TacticsProof
class TacticsProof0
class Object
trait Matchable
class Any
Self type
object StrongStrictMonotoneSchema extends TacticsProof

Attributes

Supertypes
class TacticsProof
class TacticsProof0
class Object
trait Matchable
class Any
Self type
object ThreeStrictMonotoneRefutation extends TacticsProof

Attributes

Supertypes
class TacticsProof
class TacticsProof0
class Object
trait Matchable
class Any
Self type
object ThreeStrictMonotoneSchema extends TacticsProof

Attributes

Supertypes
class TacticsProof
class TacticsProof0
class Object
trait Matchable
class Any
Self type
object TwoStrictMonotoneRefutation extends TacticsProof

Attributes

Supertypes
class TacticsProof
class TacticsProof0
class Object
trait Matchable
class Any
Self type
object TwoStrictMonotoneSchema extends TacticsProof

Attributes

Supertypes
class TacticsProof
class TacticsProof0
class Object
trait Matchable
class Any
Self type
object VeryWeakLexicoPHPSchema extends TacticsProof

Attributes

Supertypes
class TacticsProof
class TacticsProof0
class Object
trait Matchable
class Any
Self type
object VeryWeakLexicoPHPSchemaVariant extends TacticsProof

Attributes

Supertypes
class TacticsProof
class TacticsProof0
class Object
trait Matchable
class Any
Self type
object VeryWeakLexicoPHPSchemaVariantRefutation extends TacticsProof

Attributes

Supertypes
class TacticsProof
class TacticsProof0
class Object
trait Matchable
class Any
Self type
object VeryWeakPHPSeqSchema extends TacticsProof

Attributes

Supertypes
class TacticsProof
class TacticsProof0
class Object
trait Matchable
class Any
Self type
object VeryWeakPHPSeqTwoSchema extends TacticsProof

Attributes

Supertypes
class TacticsProof
class TacticsProof0
class Object
trait Matchable
class Any
Self type
object VeryWeakPHPSequenceVariantSchema extends TacticsProof

Attributes

Supertypes
class TacticsProof
class TacticsProof0
class Object
trait Matchable
class Any
Self type
object divisionByTwo extends TacticsProof

Attributes

Supertypes
class TacticsProof
class TacticsProof0
class Object
trait Matchable
class Any
Self type
object drinker extends TacticsProof

Attributes

Supertypes
class TacticsProof
class TacticsProof0
class Object
trait Matchable
class Any
Self type
drinker.type
object elemAtIndex extends TacticsProof

Attributes

Supertypes
class TacticsProof
class TacticsProof0
class Object
trait Matchable
class Any
Self type
object epsilon extends Script

Attributes

Supertypes
class Script
trait App
trait DelayedInit
class Object
trait Matchable
class Any
Show all
Self type
epsilon.type
object fol1 extends TacticsProof

Attributes

Supertypes
class TacticsProof
class TacticsProof0
class Object
trait Matchable
class Any
Self type
fol1.type
object fol2

Provides a simple intuitionistic proof of ¬p ∨ p ⊢ ¬¬p → p. Applying the CERES method will create a non-intuitionistic proof but reductive cut-elimination will always create an intuitionistic one. Therefore this is an example that CERES produces cut-free proofs which reductive cut-elimination cannot.

Provides a simple intuitionistic proof of ¬p ∨ p ⊢ ¬¬p → p. Applying the CERES method will create a non-intuitionistic proof but reductive cut-elimination will always create an intuitionistic one. Therefore this is an example that CERES produces cut-free proofs which reductive cut-elimination cannot.

Attributes

Supertypes
class Object
trait Matchable
class Any
Self type
fol2.type

Attributes

Supertypes
class Object
trait Matchable
class Any
Self type
object gniaSchema extends TacticsProof

Attributes

Supertypes
class TacticsProof
class TacticsProof0
class Object
trait Matchable
class Any
Self type
gniaSchema.type

Attributes

Supertypes
class Object
trait Matchable
class Any
Self type
object instprover extends Script

Attributes

Supertypes
class Script
trait App
trait DelayedInit
class Object
trait Matchable
class Any
Show all
Self type
instprover.type
object lattice extends TacticsProof

Attributes

Supertypes
class TacticsProof
class TacticsProof0
class Object
trait Matchable
class Any
Self type
lattice.type
class nTape2 extends AnalysisWithCeresOmega

Version 2 of the higher-order n-Tape proof.

Version 2 of the higher-order n-Tape proof.

Attributes

Companion
object
Supertypes
class AnalysisWithCeresOmega
class Object
trait Matchable
class Any
Known subtypes
object nTape2.type
object nTape2 extends nTape2

Attributes

Companion
class
Supertypes
class nTape2
class AnalysisWithCeresOmega
class Object
trait Matchable
class Any
Self type
nTape2.type
class nTape3 extends AnalysisWithCeresOmega

Version 3 of the higher-order n-Tape proof.

Version 3 of the higher-order n-Tape proof.

Attributes

Companion
object
Supertypes
class AnalysisWithCeresOmega
class Object
trait Matchable
class Any
Known subtypes
object nTape3.type
object nTape3 extends nTape3

Attributes

Companion
class
Supertypes
class nTape3
class AnalysisWithCeresOmega
class Object
trait Matchable
class Any
Self type
nTape3.type
class nTape4(val size: Int) extends AnalysisWithCeresOmega

Version 3 of the higher-order n-Tape proof.

Version 3 of the higher-order n-Tape proof.

Attributes

Companion
object
Supertypes
class AnalysisWithCeresOmega
class Object
trait Matchable
class Any
Known subtypes
class nTape5
class nTape5Arith
object nTape4

Attributes

Companion
class
Supertypes
class Object
trait Matchable
class Any
Self type
nTape4.type
class nTape5(_size: Int) extends nTape4

Version 5 of the higher-order n-Tape proof, where if-then-else is directly axiomatized i.e. it has 2 additional axioms P -> if code(P) then t else f = t and -P -> if code(P) then t else f = f which were theorems before. In contrast to nTape4 it cuts on instances of the theorem C for specific upper bounds n. Since the instantiated proofs were generated manually, only nTape5(2) to nTape5(4) work.

Version 5 of the higher-order n-Tape proof, where if-then-else is directly axiomatized i.e. it has 2 additional axioms P -> if code(P) then t else f = t and -P -> if code(P) then t else f = f which were theorems before. In contrast to nTape4 it cuts on instances of the theorem C for specific upper bounds n. Since the instantiated proofs were generated manually, only nTape5(2) to nTape5(4) work.

Attributes

Companion
object
Supertypes
class nTape4
class AnalysisWithCeresOmega
class Object
trait Matchable
class Any
object nTape5

Version 5 of the higher-order n-Tape proof. In contrast to nTape4 it cuts on instances of the theorem C for specific upper bounds n. Since the instantiated proofs were generated manually, only nTape5(2) to nTape5(4) work.

Version 5 of the higher-order n-Tape proof. In contrast to nTape4 it cuts on instances of the theorem C for specific upper bounds n. Since the instantiated proofs were generated manually, only nTape5(2) to nTape5(4) work.

Attributes

Companion
class
Supertypes
class Object
trait Matchable
class Any
Self type
nTape5.type
class nTape5Arith(_size: Int) extends nTape4

Version 5 of the higher-order n-Tape proof, where if-then-else is still proved in arithmetic. In contrast to nTape4 it cuts on instances of the theorem C for specific upper bounds n. Since the instantiated proofs were generated manually, only nTape5Arith(2) works.

Version 5 of the higher-order n-Tape proof, where if-then-else is still proved in arithmetic. In contrast to nTape4 it cuts on instances of the theorem C for specific upper bounds n. Since the instantiated proofs were generated manually, only nTape5Arith(2) works.

Attributes

Companion
object
Supertypes
class nTape4
class AnalysisWithCeresOmega
class Object
trait Matchable
class Any
object nTape5Arith

Version 5 of the higher-order n-Tape proof, where if-then-else is still proved in arithmetic. In contrast to nTape4 it cuts on instances of the theorem C for specific upper bounds n. Since the instantiated proofs were generated manually, only nTape5Arith(2) works.

Version 5 of the higher-order n-Tape proof, where if-then-else is still proved in arithmetic. In contrast to nTape4 it cuts on instances of the theorem C for specific upper bounds n. Since the instantiated proofs were generated manually, only nTape5Arith(2) works.

Attributes

Companion
class
Supertypes
class Object
trait Matchable
class Any
Self type
object nTape6

The object nTape6 generates hard problems for higher order theorem provers containing an axiomatization of if-then-else. Formulas: f1,f2 ... if-then-else axiomatizations f3,f4 ... properties of the successor function (0 is no successor and a number is always different from its successor) conclusion0 ... there exists a function h s.t. h(0) = 1, h(1) = 0 conclusion1 ... there exists a function h s.t. h(0) = 1, h(1) = 0, h(2) = 0 conclusion2 ... there exists a function h s.t. h(0) = 1, h(1) = 0, h(2) = 1 w1 ... witness for sc w2 ... witness for sc2

The object nTape6 generates hard problems for higher order theorem provers containing an axiomatization of if-then-else. Formulas: f1,f2 ... if-then-else axiomatizations f3,f4 ... properties of the successor function (0 is no successor and a number is always different from its successor) conclusion0 ... there exists a function h s.t. h(0) = 1, h(1) = 0 conclusion1 ... there exists a function h s.t. h(0) = 1, h(1) = 0, h(2) = 0 conclusion2 ... there exists a function h s.t. h(0) = 1, h(1) = 0, h(2) = 1 w1 ... witness for sc w2 ... witness for sc2

The problems are (in sequent notation):

P0: f1, f2 :- conclusion0 P1: f1, f2, f3, f4 :- conclusion1 P2: f1, f2, f3, f4 :- conclusion2

The generated filenames are "ntape6-i-without-witness.tptp" for i = 0 to 2.

To show that there are actual witnesses for the function h, we provide a witness, where the witness w1 can be used for both W0 and W1:

W0: { w1 :- } x P0 W1: { w1 :- } x P1 W2: { w2 :- } x P2

The generated filenames are "ntape6-i-with-witness.tptp" for i = 0 to 2.

Attributes

Supertypes
class Object
trait Matchable
class Any
Self type
nTape6.type

Attributes

Supertypes
class Object
trait Matchable
class Any
Self type
object philsci

Attributes

Supertypes
class Object
trait Matchable
class Any
Self type
philsci.type
object primediv extends TacticsProof

Attributes

Supertypes
class TacticsProof
class TacticsProof0
class Object
trait Matchable
class Any
Self type
primediv.type
object successor extends TacticsProof

Attributes

Supertypes
class TacticsProof
class TacticsProof0
class Object
trait Matchable
class Any
Self type
successor.type
object tape extends TacticsProof

Attributes

Supertypes
class TacticsProof
class TacticsProof0
class Object
trait Matchable
class Any
Self type
tape.type
object tapeUrban extends TacticsProof

Formalisation of the tape-proof as described in C. Urban: Classical Logic and Computation, PhD Thesis, Cambridge University, 2000.

Formalisation of the tape-proof as described in C. Urban: Classical Logic and Computation, PhD Thesis, Cambridge University, 2000.

Attributes

Supertypes
class TacticsProof
class TacticsProof0
class Object
trait Matchable
class Any
Self type
tapeUrban.type
object tautSchema extends TacticsProof

Attributes

Supertypes
class TacticsProof
class TacticsProof0
class Object
trait Matchable
class Any
Self type
tautSchema.type
object tbillc extends TacticsProof

This is an example used in the talk[1] at TbiLLC 2013. It generates a (cut-free) LK proof where the extracted expansion tree has nested quantifiers.

This is an example used in the talk[1] at TbiLLC 2013. It generates a (cut-free) LK proof where the extracted expansion tree has nested quantifiers.

[1] http://www.illc.uva.nl/Tbilisi/Tbilisi2013/uploaded_files/inlineitem/riener.pdf

Attributes

Supertypes
class TacticsProof
class TacticsProof0
class Object
trait Matchable
class Any
Self type
tbillc.type

Value members

Concrete fields