The GL-proof game. #
Builder-Prover game for constructive counter-models/proofs. Builder gets a rule application R and
plays an applicable sequent Γ in order to construct a counter-model. Prover get a sequent Γ and
plays rule applications R in order to construct a proof.
Auxiliary declaration used in the GL coalgebra development.
Instances For
Auxiliary declaration used in the GL coalgebra development.
Instances For
The available rule applications for a sequent Γ.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The sequents possible after a rule application R.
Equations
- (Lean4GlCoalgebras.RuleApp.top Δ a).sequents = ∅
- (Lean4GlCoalgebras.RuleApp.ax Δ n a).sequents = ∅
- (Lean4GlCoalgebras.RuleApp.and Δ φ ψ a).sequents = {Δ \ {φ&ψ} ∪ {φ}, Δ \ {φ&ψ} ∪ {ψ}}
- (Lean4GlCoalgebras.RuleApp.or Δ φ ψ a).sequents = {Δ \ {φ v ψ} ∪ {φ, ψ}}
- (Lean4GlCoalgebras.RuleApp.box Δ φ a).sequents = {(Δ \ {□φ}).D ∪ {φ}}
Instances For
Note: the game stores the history of which rule applications have come prior.
Equations
Instances For
Auxiliary declaration used in the GL coalgebra development.
- prover {R : RuleApp} {Rs : List RuleApp} {Γ : Sequent} {Γs : List Sequent} : R ∈ Γ.ruleApps → Move (Sum.inl Γ, Γs, Rs) (Sum.inr R, Γ :: Γs, Rs)
- builder {R : RuleApp} {Rs : List RuleApp} {Γ : Sequent} {Γs : List Sequent} : Γ ∈ R.sequents → Γ ∉ Γs → Move (Sum.inr R, Γs, Rs) (Sum.inl Γ, Γs, R :: Rs)
Instances For
Given two consecutive Prover moves, the latter move is in the FL closure of the prior.
The game is converse well-founded.
Auxiliary declaration used in the GL coalgebra development.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Move relation and being in the set of game moves are equivalent.