package examples
- Alphabetic
- By Inheritance
- examples
- AnyRef
- Any
- Hide All
- Show All
- Public
- Protected
Package Members
Type Members
- class Script extends App
- class nTape2 extends AnalysisWithCeresOmega
Version 2 of the higher-order n-Tape proof.
- class nTape3 extends AnalysisWithCeresOmega
Version 3 of the higher-order n-Tape proof.
- class nTape4 extends AnalysisWithCeresOmega
Version 3 of the higher-order n-Tape proof.
- class nTape5 extends nTape4
Version 5 of the higher-order n-Tape proof, where if-then-else is directly axiomatized i.e.
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.
- class nTape5Arith extends nTape4
Version 5 of the higher-order n-Tape proof, where if-then-else is still proved in arithmetic.
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.
Value Members
- val proofSequences: Seq[ProofSequence]
- 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
- object CASCData
- object CASCEvaluation
- object CERESExpansionExampleProof
- object CountingEquivalence
Sequence of valid first-order formulas about equivalent counting methods.
Sequence of valid first-order formulas about equivalent counting methods.
Consider the formula ∀z ∃=1i ∀x ∃y a_i(x,y,z), where ∃=1i 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.
- object ECSJumpSchema extends TacticsProof
- object EventuallyConstantSchema extends TacticsProof
- object EventuallyConstantSchemaInductionRefutation extends TacticsProof
- object EventuallyConstantSchemaRefutation extends TacticsProof
- object ExponentialCompression extends TacticsProof
- object FirstSchema0 extends TacticsProof
- object FirstSchema1 extends TacticsProof
- object FirstSchema2 extends TacticsProof
- object FirstSchema3 extends TacticsProof
- object FirstSchema4 extends TacticsProof
- object FirstSchema5 extends TacticsProof
- object FirstSchema6 extends TacticsProof
- object FirstSchema7 extends TacticsProof
- object FirstSchema8 extends TacticsProof
- object FirstSchema9 extends TacticsProof
- object Formulas
Contains some commonly used formulas.
- object FourStrictMonotoneSchema extends TacticsProof
- object FunctionIterationRefutation extends TacticsProof
- object FunctionIterationRefutationPos extends TacticsProof
- object FunctionIterationSchema extends TacticsProof
- object GradedStrictMonotoneSchema extends TacticsProof
- object GradedStrictMonotoneSequenceRefutation extends TacticsProof
- object GradedStrictMonotoneSequenceSchema extends TacticsProof
- object MonoidCancellation extends TacticsProof
Monoid cancellation benchmark from Gregory Malecha and Jesper Bengtson: Extensible and Efficient Automation Through Reflective Tactics, ESOP 2016.
- object NdiffSchema extends TacticsProof
- object NiaSchema extends TacticsProof
- object NiaSchemaRefutation extends TacticsProof
- object OneStrictMonotoneRefutation extends TacticsProof
- object OneStrictMonotoneSchema extends TacticsProof
- object OneStrictMonotoneSequenceRefutation extends TacticsProof
- object OneStrictMonotoneSequenceSchema extends TacticsProof
- object PQPairs
Creates the n-th formula of a sequence where distributivity-based algorithm produces only exponential CNFs.
- object Permutations
Given n >= 2 creates an unsatisfiable first-order clause set based on a statement about the permutations in S_n.
- object Pi2Pigeonhole extends TacticsProof
- object Pi3Pigeonhole extends TacticsProof
- object PigeonHolePrinciple
Constructs a formula representing the pigeon hole principle.
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.
- object ReductionDemo extends Script
- object ReforestDemo extends Script
- object SimpleMutualInductionSchema extends TacticsProof
- object StrictMonotoneSchema extends TacticsProof
- object StrongStrictMonotoneSchema extends TacticsProof
- object ThreeStrictMonotoneRefutation extends TacticsProof
- object ThreeStrictMonotoneSchema extends TacticsProof
- object TwoStrictMonotoneRefutation extends TacticsProof
- object TwoStrictMonotoneSchema extends TacticsProof
- object VeryWeakLexicoPHPSchema extends TacticsProof
- object VeryWeakLexicoPHPSchemaVariant extends TacticsProof
- object VeryWeakLexicoPHPSchemaVariantRefutation extends TacticsProof
- object VeryWeakPHPSeqSchema extends TacticsProof
- object VeryWeakPHPSeqTwoSchema extends TacticsProof
- object VeryWeakPHPSequenceVariantSchema extends TacticsProof
- object divisionByTwo extends TacticsProof
- object drinker extends TacticsProof
- object elemAtIndex extends TacticsProof
- object epsilon extends Script
- object fol1 extends TacticsProof
- object fol2
Provides a simple intuitionistic proof of ¬p ∨ p ⊢ ¬¬p → p.
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.
- object gapticExamples
- object gniaSchema extends TacticsProof
- object implicationLeftMacro
- object instprover extends Script
- object lattice extends TacticsProof
- object nTape2 extends nTape2
- object nTape3 extends nTape3
- object nTape4
- object nTape5
Version 5 of the higher-order n-Tape proof.
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.
- object nTape5Arith
Version 5 of the higher-order n-Tape proof, where if-then-else is still proved in arithmetic.
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.
- object nTape6
The object nTape6 generates hard problems for higher order theorem provers containing an axiomatization of if-then-else.
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.
- object nTapeInstances
- object philsci
- object primediv extends TacticsProof
- object successor extends TacticsProof
- object tape extends TacticsProof
- object tapeUrban extends TacticsProof
Formalisation of the tape-proof as described in C.
Formalisation of the tape-proof as described in C. Urban: Classical Logic and Computation, PhD Thesis, Cambridge University, 2000.
- object tautSchema extends TacticsProof
- object tbillc extends TacticsProof
This is an example used in the talk[1] at TbiLLC 2013.
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
This is the API documentation for GAPT.
The main package is gapt.