SLIDE 1 Transitive Closure Logic
Infinitary and Cyclic Proof Systems
Reuben N. S. Rowe 1 Liron Cohen 2 PARIS Workshop @ FLoC, Sunday 8th July 2018, Oxford, UK
1School of Computing, University of Kent, Canterbury, UK 2Dept of Computer Science, Cornell University, Ithaca, NY, USA
SLIDE 2 Transitive Closure (TC) Logic extends FOL with formulas:
- (RTCx,y φ)(s, t)
- φ is a formula
- x and y are distinct variables (which become bound in φ)
- s and t are terms
whose intended meaning is an infinite disjunction s t s x t y w1 s x w1 y w1 x t y w1 w2 s x w1 y w1 x w2 y w2 x t y
1
SLIDE 3 Transitive Closure (TC) Logic extends FOL with formulas:
- (RTCx,y φ)(s, t)
- φ is a formula
- x and y are distinct variables (which become bound in φ)
- s and t are terms
whose intended meaning is an infinite disjunction s = t ∨ φ[s/x, t/y] ∨ (∃w1 . φ[s/x, w1/y] ∧ φ[w1/x, t/y]) ∨ (∃w1, w2 . φ[s/x, w1/y] ∧ φ[w1/x, w2/y] ∧ φ[w2/x, t/y]) ∨ . . .
1
SLIDE 4 The formal semantics:
- M is a (standard) first-order model with domain D
- v is a valuation of terms in M:
M, v | = (RTCx,y φ)(s, t) a0 an D v s a0 v t an M v x ai y ai
1
for all i n
a0 a1 a2 an
1
an v s v t
2
SLIDE 5 The formal semantics:
- M is a (standard) first-order model with domain D
- v is a valuation of terms in M:
M, v | = (RTCx,y φ)(s, t) ⇔ ∃a0, . . . , an ∈ D v s a0 v t an M v x ai y ai
1
for all i n
a0 a1 a2 an−1 an v s v t
. . .
2
SLIDE 6 The formal semantics:
- M is a (standard) first-order model with domain D
- v is a valuation of terms in M:
M, v | = (RTCx,y φ)(s, t) ⇔ ∃a0, . . . , an ∈ D . v(s) = a0 ∧ v(t) = an M v x ai y ai
1
for all i n
a0 a1 a2 an−1 an v(s) v(t)
. . .
2
SLIDE 7 The formal semantics:
- M is a (standard) first-order model with domain D
- v is a valuation of terms in M:
M, v | = (RTCx,y φ)(s, t) ⇔ ∃a0, . . . , an ∈ D . v(s) = a0 ∧ v(t) = an ∧ M, v[x := ai, y := ai+1] | = φ for all i < n
a0 a1 a2 an−1 an v(s) v(t)
ϕ ϕ ϕ ϕ
2
SLIDE 8 Why ‘Transitive Closure’ logic?
- Consider the binary relation induced by
(wrt. x and y): x y
M v
a b M v x a y b
‘denotes’ the reflexive, transitive closure of : M v RTCx y s t v s v t x y
M v 3
SLIDE 9 Why ‘Transitive Closure’ logic?
- Consider the binary relation induced by φ (wrt. x and y):
φ(x, y)M,v = { (a, b) | M, v[x := a, y := b] | = φ }
‘denotes’ the reflexive, transitive closure of : M v RTCx y s t v s v t x y
M v 3
SLIDE 10 Why ‘Transitive Closure’ logic?
- Consider the binary relation induced by φ (wrt. x and y):
φ(x, y)M,v = { (a, b) | M, v[x := a, y := b] | = φ }
- (RTCx,y φ) ‘denotes’ the reflexive, transitive closure of φ:
M, v | = (RTCx,y φ)(s, t) ⇔ (v(s), v(t)) ∈ (φ(x, y)M,v)∗
3
SLIDE 11 Why Transitive Closure logic?
- It is a minimal extension of FOL
- It has an intuitive, easy-to-understand semantics
- It turns out to be surprisingly expressive
Theorem (Avron ’03) All finitely inductively defined relations are definable in TC.
4
SLIDE 12 Why Transitive Closure logic?
- It is a minimal extension of FOL
- It has an intuitive, easy-to-understand semantics
- It turns out to be surprisingly expressive
Theorem (Avron ’03) All finitely inductively defined relations* are definable in TC.†
- A. Avron, Transitive Closure and the Mechanization of Mathematics, 2003.
*as defined in: S. Feferman, Finitary Inductively Presented Logics, 1989 †with signatures containing a pairing function
4
SLIDE 13 Example: Arithmetic
- Take a signature Σ = {0, s} + equality and pairing
Nat(x) ≡ (RTCv,w s v = w)(0, x) “x y z” RTCv w n1 n2 v n1 n2 w s n1 s n2 0 y z x
- The following axioms categorically characterise the
natural numbers in TC: x s x x y s x s y x y x Nat x
s 0 s s 0 sn 1 0 v x
s s s s
0 y s 0 s y s s 0 s s y sz 0 sz y 5
SLIDE 14 Example: Arithmetic
- Take a signature Σ = {0, s} + equality and pairing
Nat(x) ≡ (RTCv,w s v = w)(0, x) “x y z” RTCv w n1 n2 v n1 n2 w s n1 s n2 0 y z x
- The following axioms categorically characterise the
natural numbers in TC: x s x x y s x s y x y x Nat x
s 0 s s 0 sn-1 0 v(x)
s · = · s · = · s · = · s · = ·
0 y s 0 s y s s 0 s s y sz 0 sz y 5
SLIDE 15 Example: Arithmetic
- Take a signature Σ = {0, s} + equality and pairing
Nat(x) ≡ (RTCv,w s v = w)(0, x) “x = y + z” ≡ (RTCv,w ∃n1, n2 . v = ⟨n1, n2⟩ ∧ w = ⟨s n1, s n2⟩)(⟨0, y⟩, ⟨z, x⟩)
- The following axioms categorically characterise the
natural numbers in TC: x s x x y s x s y x y x Nat x
s 0 s s 0 sn 1 0 v x
s s s s
0 y s 0 s y s s 0 s s y sz 0 sz y 5
SLIDE 16 Example: Arithmetic
- Take a signature Σ = {0, s} + equality and pairing
Nat(x) ≡ (RTCv,w s v = w)(0, x) “x = y + z” ≡ (RTCv,w ∃n1, n2 . v = ⟨n1, n2⟩ ∧ w = ⟨s n1, s n2⟩)(⟨0, y⟩, ⟨z, x⟩)
- The following axioms categorically characterise the
natural numbers in TC: x s x x y s x s y x y x Nat x
s 0 s s 0 sn 1 0 v x
s s s s
⟨0, y⟩ s 0 s y s s 0 s s y sz 0 sz y 5
SLIDE 17 Example: Arithmetic
- Take a signature Σ = {0, s} + equality and pairing
Nat(x) ≡ (RTCv,w s v = w)(0, x) “x = y + z” ≡ (RTCv,w ∃n1, n2 . v = ⟨n1, n2⟩ ∧ w = ⟨s n1, s n2⟩)(⟨0, y⟩, ⟨z, x⟩)
- The following axioms categorically characterise the
natural numbers in TC: x s x x y s x s y x y x Nat x
s 0 s s 0 sn 1 0 v x
s s s s
⟨0, y⟩ ⟨s 0, s y⟩ s s 0 s s y sz 0 sz y 5
SLIDE 18 Example: Arithmetic
- Take a signature Σ = {0, s} + equality and pairing
Nat(x) ≡ (RTCv,w s v = w)(0, x) “x = y + z” ≡ (RTCv,w ∃n1, n2 . v = ⟨n1, n2⟩ ∧ w = ⟨s n1, s n2⟩)(⟨0, y⟩, ⟨z, x⟩)
- The following axioms categorically characterise the
natural numbers in TC: x s x x y s x s y x y x Nat x
s 0 s s 0 sn 1 0 v x
s s s s
⟨0, y⟩ ⟨s 0, s y⟩ ⟨s s 0, s s y⟩ sz 0 sz y 5
SLIDE 19 Example: Arithmetic
- Take a signature Σ = {0, s} + equality and pairing
Nat(x) ≡ (RTCv,w s v = w)(0, x) “x = y + z” ≡ (RTCv,w ∃n1, n2 . v = ⟨n1, n2⟩ ∧ w = ⟨s n1, s n2⟩)(⟨0, y⟩, ⟨z, x⟩)
- The following axioms categorically characterise the
natural numbers in TC: x s x x y s x s y x y x Nat x
s 0 s s 0 sn 1 0 v x
s s s s
⟨0, y⟩ ⟨s 0, s y⟩ ⟨s s 0, s s y⟩ ⟨sz 0, sz y⟩ 5
SLIDE 20 Example: Arithmetic
- Take a signature Σ = {0, s} + equality and pairing
Nat(x) ≡ (RTCv,w s v = w)(0, x) “x = y + z” ≡ (RTCv,w ∃n1, n2 . v = ⟨n1, n2⟩ ∧ w = ⟨s n1, s n2⟩)(⟨0, y⟩, ⟨z, x⟩)
- The following axioms categorically characterise the
natural numbers in TC: ∀x . s x ̸= 0 ∀x, y . s (x) = s (y) → x = y ∀x . Nat(x)
s 0 s s 0 sn 1 0 v x
s s s s
0 y s 0 s y s s 0 s s y sz 0 sz y 5
SLIDE 21 Applications
Knowledge Reasoning Model Checking Type Theory Complexity Verification Databases
Loops/inductive data in programs Expressive query languages, e.g. SQL3, IBM DB2, Datalog (WITH RECURSIVE) Characterization of complexity classes Inductive definition
Reachability properties Common knowledge, defined inductively
- J. Halpern Et Al, On the Unusual Effectiveness of Logic in Computer Science, 2001
6
SLIDE 22 Applications
Knowledge Reasoning Model Checking Type Theory Complexity Verification Databases
Loops/inductive data in programs Expressive query languages, e.g. SQL3, IBM DB2, Datalog (WITH RECURSIVE) Characterization of complexity classes Inductive definition
Reachability properties Common knowledge, defined inductively
- J. Halpern Et Al, On the Unusual Effectiveness of Logic in Computer Science, 2001
6
SLIDE 23 FOL SOL TC Weak SOL
Cardinality logic FOL + Henkin Quantifiers FOM FOL + ML Ind. Defs
“Everything should be made as simple as possible but not simpler” —Albert Einsten
7
SLIDE 24 FOL SOL TC Weak SOL
Cardinality logic FOL + Henkin Quantifiers FOM FOL + ML Ind. Defs
“Everything should be made as simple as possible but not simpler” —Albert Einsten
7
SLIDE 25
FOL SOL TC Weak SOL ω-logic Cardinality logic FOL + Henkin Quantifiers FOM FOL + ML Ind. Defs
“Everything should be made as simple as possible but not simpler” —Albert Einsten
7
SLIDE 26
FOL SOL TC Weak SOL ω-logic Cardinality logic FOL + Henkin Quantifiers FOMµ FOL + ML Ind. Defs
“Everything should be made as simple as possible but not simpler” —Albert Einsten
7
SLIDE 27
The transitive closure R+ = ∪
i≥0
Ri, where R0 = R Ri+1 = Ri ◦ R (i ≥ 0) is a particular kind of fixed point: R+ = µX.ΨR(X) where, for binary relations R and S, we define ΨR(S) = R ∪ (R ◦ S)
8
SLIDE 28 FOL + Martin-Löf inductive definitions:
- For each predicate symbol P1, . . . , Pn, we give a set of
productions of the form: Q1(⃗ s1) . . . Qn(⃗ sn) Pi( ⃗ t)
- The productions induce a monotone operator on the
domain of predicate interpretations : Pred
k k
- The semantics of the logic uses the least fixed point
9
SLIDE 29 FOL + Martin-Löf inductive definitions:
- For each predicate symbol P1, . . . , Pn, we give a set of
productions of the form: Q1(⃗ s1) . . . Qn(⃗ sn) Pi( ⃗ t)
- The productions induce a monotone operator on the
domain of predicate interpretations X: X : Pred → ℘( ∪
k≥0
Dk)
- The semantics of the logic uses the least fixed point
9
SLIDE 30 FOL + Martin-Löf inductive definitions:
- For each predicate symbol P1, . . . , Pn, we give a set of
productions of the form: Q1(⃗ s1) . . . Qn(⃗ sn) Pi( ⃗ t)
- The productions induce a monotone operator on the
domain of predicate interpretations X: X : Pred → ℘( ∪
k≥0
Dk)
- The semantics of the logic uses the least fixed point
9
SLIDE 31 FOL + Martin-Löf inductive definitions:
- For each predicate symbol P1, . . . , Pn, we give a set of
productions of the form: Q1(⃗ s1) . . . Qn(⃗ sn) Pi( ⃗ t)
- The productions induce a monotone operator on the
domain of predicate interpretations X: X : Pred → ℘( ∪
k≥0
Dk)
- The semantics of the logic uses the least fixed point
TC has all possible inductive definitions ‘available’ using
9
SLIDE 32 FOL + Martin-Löf inductive definitions:
- For each predicate symbol P1, . . . , Pn, we give a set of
productions of the form: Q1(⃗ s1) . . . Qn(⃗ sn) Pi( ⃗ t)
- The productions induce a monotone operator on the
domain of predicate interpretations X: X : Pred → ℘( ∪
k≥0
Dk)
- The semantics of the logic uses the least fixed point
FOLID productions only allow for Horn clauses
9
SLIDE 33
What about the proof theory?
Effective Complete Henkin-Complete
Finitary RTCG Infinitary RTCG Cyclic NCRTCG Cyclic CRTCG Finitary RTCG A Cyclic CRTCG A
10
SLIDE 34
What about the proof theory?
Effective Complete Henkin-Complete
Finitary RTCG Infinitary RTCG Cyclic NCRTCG Cyclic CRTCG Finitary RTCG A Cyclic CRTCG A
10
SLIDE 35
What about the proof theory?
Effective Complete Henkin-Complete
Finitary RTCG Infinitary RTCG Cyclic NCRTCG Cyclic CRTCG Finitary RTCG A Cyclic CRTCG A
10
SLIDE 36
What about the proof theory?
Effective Complete Henkin-Complete
Finitary RTCG Infinitary RTCG Cyclic NCRTCG Cyclic CRTCG Finitary RTCG A Cyclic CRTCG A
10
SLIDE 37
What about the proof theory?
Effective Complete Henkin-Complete
Finitary RTCG Infinitary RTCω
G
Cyclic NCRTCG Cyclic CRTCG Finitary RTCG A Cyclic CRTCG A
10
SLIDE 38
What about the proof theory?
Effective Complete Henkin-Complete
Finitary RTCG Infinitary RTCω
G
Cyclic NCRTCG Cyclic CRTCω
G
Finitary RTCG A Cyclic CRTCG A
10
SLIDE 39
What about the proof theory?
Effective Complete Henkin-Complete
Finitary RTCG Infinitary RTCω
G
Cyclic NCRTCG Cyclic CRTCω
G
Finitary RTCG A Cyclic CRTCG A
10
SLIDE 40
What about the proof theory?
Effective Complete Henkin-Complete
Finitary RTCG Infinitary RTCω
G
Cyclic NCRTCG Cyclic CRTCω
G
Finitary RTCG A Cyclic CRTCG A
10
SLIDE 41
What about the proof theory?
Effective Complete Henkin-Complete
Finitary RTCG Infinitary RTCω
G
Cyclic NCRTCω
G
Cyclic CRTCω
G
Finitary RTCG A Cyclic CRTCG A
10
SLIDE 42
What about the proof theory?
Effective Complete Henkin-Complete
Finitary RTCG Infinitary RTCω
G
Cyclic NCRTCω
G
Cyclic CRTCω
G
Finitary RTCG+A Cyclic CRTCω
G+A 10
SLIDE 43
What about the proof theory?
Effective Complete Henkin-Complete
Finitary RTCG Infinitary RTCω
G
Cyclic NCRTCω
G
Cyclic CRTCω
G
Finitary RTCG+A Cyclic CRTCω
G+A
≡
10
SLIDE 44
RTCG: A Finitary Proof System with ‘Explicit’ Induction
We add the following rules to Gentzen’s sequent calculus for CL with substitution and equality:
reflexivity ⊢ (RTCx,y ϕ)(t, t) step Γ ⊢ ∆, (RTCx,y ϕ)(s, r) Γ ⊢ ∆, ϕ[r/x, t/y] Γ ⊢ ∆, (RTCx,y ϕ)(s, t) induction Γ, ψ(x), ϕ(x, y) ⊢ ∆, ψ[y/x] Γ, ψ[s/x], (RTCx,y ϕ)(s, t) ⊢ ∆, ψ[t/x] x ̸∈ fv(Γ, ∆) and y ̸∈ fv(Γ, ∆, ψ)
11
SLIDE 45
RTCG ‘captures’ TC:
Γ ⊢ ∆, (RTCx,y ϕ)(s, t) Γ ⊢ ∆, (RTCx,y ϕ)(t, s) Γ ⊢ ∆, (RTCx,y ϕ)(s, t) Γ ⊢ ∆, (RTCv,w ϕ[v/x, w/y])(s, t) Γ, ϕ[s/x] ⊢ ∆ Γ, (RTCx,y ϕ)(s, t) ⊢ ∆, s = t Γ ⊢ ∆, ϕ[s/x, r/y] Γ ⊢ ∆, (RTCx,y ϕ)(r, t) Γ ⊢ ∆, (RTCx,y ϕ)(s, t) Γ, ϕ ⊢ ∆, ψ Γ, (RTCx,y ϕ)(s, t) ⊢ ∆, (RTCx,y ψ)(s, t) Γ, (RTCx,y ϕ)(s, t) ⊢ ∆ Γ, (RTCv,w (RTCx,y ϕ)(v, w))(s, t) ⊢ ∆ Γ ⊢ ∆, (RTCx,y ϕ)(s, t) Γ ⊢ ∆, s = t, ∃z . (RTCx,y ϕ)(s, z) ∧ ϕ[z/x, t/y] 12
SLIDE 46 RTCG is complete for the following Henkin-style semantics:
- A TC Henkin-frame H is a triple D I
- D I is a first-order structure
- D is its set of admissible subsets
- RTC formulas are interpreted wrt. frames as follows:
H v RTCx y s t for all A , if v s A and a b D a A H v x a y b b A then v t A
- A TC Henkin structure is a TC Henkin-frame closed under
parametric definability, i.e.
a D H v x a for all , v, and H
13
SLIDE 47 RTCG is complete for the following Henkin-style semantics:
- A TC Henkin-frame H is a triple ⟨D, I, D⟩
- ⟨D, I⟩ is a first-order structure
- D ⊆ ℘(D) is its set of admissible subsets
- RTC formulas are interpreted wrt. frames as follows:
H v RTCx y s t for all A , if v s A and a b D a A H v x a y b b A then v t A
- A TC Henkin structure is a TC Henkin-frame closed under
parametric definability, i.e.
a D H v x a for all , v, and H
13
SLIDE 48 RTCG is complete for the following Henkin-style semantics:
- A TC Henkin-frame H is a triple ⟨D, I, D⟩
- ⟨D, I⟩ is a first-order structure
- D ⊆ ℘(D) is its set of admissible subsets
- RTC formulas are interpreted wrt. frames as follows:
H, v | =H (RTCx,y ϕ)(s, t) ⇔ for all A ∈ D, if v(s) ∈ A and ∀a, b ∈ D . (a ∈ A ∧ H, v[x := a, y := b] | = ϕ) → b ∈ A then v(t) ∈ A
- A TC Henkin structure is a TC Henkin-frame closed under
parametric definability, i.e.
a D H v x a for all , v, and H
13
SLIDE 49 RTCG is complete for the following Henkin-style semantics:
- A TC Henkin-frame H is a triple ⟨D, I, D⟩
- ⟨D, I⟩ is a first-order structure
- D ⊆ ℘(D) is its set of admissible subsets
- RTC formulas are interpreted wrt. frames as follows:
H, v | =H (RTCx,y ϕ)(s, t) ⇔ for all A ∈ D, if v(s) ∈ A and ∀a, b ∈ D . (a ∈ A ∧ H, v[x := a, y := b] | = ϕ) → b ∈ A then v(t) ∈ A
- A TC Henkin structure is a TC Henkin-frame closed under
parametric definability, i.e.
{a ∈ D | H, v[x := a] | = ϕ} ∈ D for all ϕ, v, and H
13
SLIDE 50 In non-well-founded proof theory we allow infinite height derivations:
. . . . . . . .
∞
(Inference)
· ·
· · · · ·
- We only accept proofs for which every path admits some
infinite descent
- This is witnessed by tracing terms/formulas
corresponding to elements of a well-founded set
- This global trace condition is an
- regular property
(i.e. decidable using Büchi automata)
14
SLIDE 51 In non-well-founded proof theory we allow infinite height derivations:
. . . . . . . .
∞
(Inference)
· ·
· · · · ·
- We only accept proofs for which every path admits some
infinite descent
- This is witnessed by tracing terms/formulas
corresponding to elements of a well-founded set
- This global trace condition is an
- regular property
(i.e. decidable using Büchi automata)
14
SLIDE 52 In non-well-founded proof theory we allow infinite height derivations:
. . . . . . . .
∞
(Inference)
· ·
· · · · ·
- We only accept proofs for which every path admits some
infinite descent
- This is witnessed by tracing terms/formulas
corresponding to elements of a well-founded set
- This global trace condition is an
- regular property
(i.e. decidable using Büchi automata)
14
SLIDE 53 In non-well-founded proof theory we allow infinite height derivations:
. . . . . . . .
∞
(Inference)
· ·
· · · · ·
- We only accept proofs for which every path admits some
infinite descent
- This is witnessed by tracing terms/formulas
corresponding to elements of a well-founded set
- This global trace condition is an ω-regular property
(i.e. decidable using Büchi automata)
14
SLIDE 54 RTCω
G: An Infinitary Proof System with ‘Implicit’ Induction
We simply replace the explicit induction rule of RTCG with:
case-split Γ, s = t ⊢ ∆ Γ, (RTCx,y ϕ)(s, z), ϕ[z/x, t/y] ⊢ ∆
(z fresh)
Γ, (RTCx,y ϕ)(s, t) ⊢ ∆
We trace formulas RTCx y s t in the antecedent of sequents The trace progresses when it traverses the principal formula of a case-split rule.
15
SLIDE 55 RTCω
G: An Infinitary Proof System with ‘Implicit’ Induction
We simply replace the explicit induction rule of RTCG with:
case-split Γ, s = t ⊢ ∆ Γ, (RTCx,y ϕ)(s, z), ϕ[z/x, t/y] ⊢ ∆
(z fresh)
Γ, (RTCx,y ϕ)(s, t) ⊢ ∆
We trace formulas (RTCx,y φ)(s, t) in the antecedent of sequents The trace progresses when it traverses the principal formula of a case-split rule.
15
SLIDE 56 RTCω
G: An Infinitary Proof System with ‘Implicit’ Induction
We simply replace the explicit induction rule of RTCG with:
case-split Γ, s = t ⊢ ∆ Γ, (RTCx,y ϕ)(s, z), ϕ[z/x, t/y] ⊢ ∆
(z fresh)
Γ, (RTCx,y ϕ)(s, t) ⊢ ∆
We trace formulas (RTCx,y φ)(s, t) in the antecedent of sequents The trace progresses when it traverses the principal formula of a case-split rule.
15
SLIDE 57 Soundness of RTCω
G
- Define a measure function for RTC-formulas:
δ(RTCx,y ϕ)(s,t)(M, v) = {minimal no. of φ-steps from v(s) to v(t) in M
v(s) a1 a2 an−1 v(t)
ϕ ϕ ϕ ϕ
- The proof rules have the following property:
RTCv w r u M v RTCx y s t M v
n1 n2 n3
16
SLIDE 58 Soundness of RTCω
G
- Define a measure function for RTC-formulas:
δ(RTCx,y ϕ)(s,t)(M, v) = {minimal no. of φ-steps from v(s) to v(t) in M
v(s) a1 a2 an−1 v(t)
ϕ ϕ ϕ ϕ
- The proof rules have the following property:
Γ1 ⊢ ∆1 . . . Γn ⊢ ∆n Γ ⊢ ∆
RTCv w r u M v RTCx y s t M v
n1 n2 n3
16
SLIDE 59 Soundness of RTCω
G
- Define a measure function for RTC-formulas:
δ(RTCx,y ϕ)(s,t)(M, v) = {minimal no. of φ-steps from v(s) to v(t) in M
v(s) a1 a2 an−1 v(t)
ϕ ϕ ϕ ϕ
- The proof rules have the following property:
Γ1 ⊢ ∆1 . . . (M′, v′) ̸| = Γi ⊢ ∆i . . . Γn ⊢ ∆n (M, v) ̸| = Γ ⊢ ∆
RTCv w r u M v RTCx y s t M v
n1 n2 n3
16
SLIDE 60 Soundness of RTCω
G
- Define a measure function for RTC-formulas:
δ(RTCx,y ϕ)(s,t)(M, v) = {minimal no. of φ-steps from v(s) to v(t) in M
v(s) a1 a2 an−1 v(t)
ϕ ϕ ϕ ϕ
- The proof rules have the following property:
. . . (M′, v′) ̸| = Γi, (RTCv,w φ′)(r, u) ⊢ ∆i . . . (M, v) ̸| = Γ, (RTCx,y φ)(s, t) ⊢ ∆ δ(RTCv,w ϕ′)(r,u)(M′, v′) ≤ δ(RTCx,y ϕ)(s,t)(M, v)
n1 n2 n3
16
SLIDE 61 Soundness of RTCω
G
- Define a measure function for RTC-formulas:
δ(RTCx,y ϕ)(s,t)(M, v) = {minimal no. of φ-steps from v(s) to v(t) in M
v(s) a1 a2 an−1 v(t)
ϕ ϕ ϕ ϕ
- The proof rules have the following property:
Γ, s = t ⊢ ∆ (M′, v′) ̸| = Γ, (RTCx,y φ)(s, z), φ[z/x, t/y] ⊢ ∆ (M, v) ̸| = Γ, (RTCx,y φ)(s, t) ⊢ ∆ δ(RTCv,w ϕ′)(r,u)(M′, v′) < δ(RTCx,y ϕ)(s,t)(M, v)
n1 n2 n3
16
SLIDE 62 Soundness of RTCω
G
- Define a measure function for RTC-formulas:
δ(RTCx,y ϕ)(s,t)(M, v) = {minimal no. of φ-steps from v(s) to v(t) in M
v(s) a1 a2 an−1 v(t)
ϕ ϕ ϕ ϕ
- The proof rules have the following property:
Γ, s = t ⊢ ∆ (M′, v′) ̸| = Γ, (RTCx,y φ)(s, z), φ[z/x, t/y] ⊢ ∆ (M, v) ̸| = Γ, (RTCx,y φ)(s, t) ⊢ ∆ δ(RTCv,w ϕ′)(r,u)(M′, v′) < δ(RTCx,y ϕ)(s,t)(M, v)
- Global trace condition ⇒ n1 > n2 > n3 > . . .
16
SLIDE 63 Cut-free Completeness of RTCω
G
Obtained using a variation of the standard technique:
- 1. Construct an infinite (cut-free) pre-proof via an exhaustive
search tree
- 2. If not a valid proof, then it is possible to construct a
counter-model
- 3. Thus search tree gives a valid proof for every valid sequent
17
SLIDE 64 CRTCω
G: A Cyclic Subsystem
. . . . . . . .
(Inference)
· ·
· · · · ·
- Restricting to all and only regular infinite pre-proofs gives
an effective system
- Regular pre-proofs can be represented as finite, possibly
cyclic graphs
18
SLIDE 65 CRTCω
G: A Cyclic Subsystem
. . . . . . . .
(Inference)
· ·
· · · ·
- Restricting to all and only regular infinite pre-proofs gives
an effective system
- Regular pre-proofs can be represented as finite, possibly
cyclic graphs
18
SLIDE 66 Implicit induction subsumes explicit induction
(Ax)
Γ, ψ[v/x] ⊢ ∆, ψ[v/x]
(=L)
Γ, ψ[v/x], v = w ⊢ ∆, ψ[w/x] . . . . . . . . Γ, ψ[v/x], (RTCx,y φ)(v, w) ⊢ ∆, ψ[w/x]
(Subst)
Γ, ψ[v/x], (RTCx,y φ)(v, z) ⊢ ∆, ψ[z/x] · · · Γ, ψ, φ ⊢ ∆, ψ[y/x]
(Subst)
Γ, ψ[z/x], φ[z/x, w/y] ⊢ ∆, ψ[w/x]
(Cut)
Γ, ψ[v/x], (RTCx,y φ)(v, z), φ[z/x, w/y] ⊢ ∆, ψ[w/x]
(case-split)
Γ, ψ[v/x], (RTCx,y φ)(v, w) ⊢ ∆, ψ[w/x]
(Subst)
Γ, ψ[s/x], (RTCx,y φ)(s, t) ⊢ ∆, ψ[t/x] · · · 19
SLIDE 67 Implicit induction subsumes explicit induction
(Ax)
Γ, ψ[v/x] ⊢ ∆, ψ[v/x]
(=L)
Γ, ψ[v/x], v = w ⊢ ∆, ψ[w/x] . . . . . . . . Γ, ψ[v/x], (RTCx,y φ)(v, w) ⊢ ∆, ψ[w/x]
(Subst)
Γ, ψ[v/x], (RTCx,y φ)(v, z) ⊢ ∆, ψ[z/x] · · · Γ, ψ, φ ⊢ ∆, ψ[y/x]
(Subst)
Γ, ψ[z/x], φ[z/x, w/y] ⊢ ∆, ψ[w/x]
(Cut)
Γ, ψ[v/x], (RTCx,y φ)(v, z), φ[z/x, w/y] ⊢ ∆, ψ[w/x]
(case-split)
Γ, ψ[v/x], (RTCx,y φ)(v, w) ⊢ ∆, ψ[w/x]
(Subst)
Γ, ψ[s/x], (RTCx,y φ)(s, t) ⊢ ∆, ψ[t/x] · · · 19
SLIDE 68 Implicit induction subsumes explicit induction
(Ax)
Γ, ψ[v/x] ⊢ ∆, ψ[v/x]
(=L)
Γ, ψ[v/x], v = w ⊢ ∆, ψ[w/x] . . . . . . . . Γ, ψ[v/x], (RTCx,y φ)(v, w) ⊢ ∆, ψ[w/x]
(Subst)
Γ, ψ[v/x], (RTCx,y φ)(v, z) ⊢ ∆, ψ[z/x] · · · Γ, ψ, φ ⊢ ∆, ψ[y/x]
(Subst)
Γ, ψ[z/x], φ[z/x, w/y] ⊢ ∆, ψ[w/x]
(Cut)
Γ, ψ[v/x], (RTCx,y φ)(v, z), φ[z/x, w/y] ⊢ ∆, ψ[w/x]
(case-split)
Γ, ψ[v/x], (RTCx,y φ)(v, w) ⊢ ∆, ψ[w/x]
(Subst)
Γ, ψ[s/x], (RTCx,y φ)(s, t) ⊢ ∆, ψ[t/x] · · ·
NCRTCω
G, the subsystem of non-overlapping
cyclic proofs, is a Henkin-complete
19
SLIDE 69 Equivalence Under Arithmetic
Obtain RTCG+A and CRTCω
G+A by adding the following schemas:
- 1. s 0 ⊢
- 2. s x = s y ⊢ x = y
- 3. ⊢ x + 0 = x
- 4. ⊢ x + s y = s (x + y)
- 5. ⊢ (RTCv,w s v = w)(0, x)
RTCG+A PAG CAG CRTCω
G+A 20
SLIDE 70 Equivalence Under Arithmetic
Obtain RTCG+A and CRTCω
G+A by adding the following schemas:
- 1. s 0 ⊢
- 2. s x = s y ⊢ x = y
- 3. ⊢ x + 0 = x
- 4. ⊢ x + s y = s (x + y)
- 5. ⊢ (RTCv,w s v = w)(0, x)
RTCG+A PAG CAG CRTCω
G+A
β C & Avron, ’15
20
SLIDE 71 Equivalence Under Arithmetic
Obtain RTCG+A and CRTCω
G+A by adding the following schemas:
- 1. s 0 ⊢
- 2. s x = s y ⊢ x = y
- 3. ⊢ x + 0 = x
- 4. ⊢ x + s y = s (x + y)
- 5. ⊢ (RTCv,w s v = w)(0, x)
RTCG+A PAG CAG CRTCω
G+A
β C & Avron, ’15 Simpson, ’17
20
SLIDE 72 Equivalence Under Arithmetic
Obtain RTCG+A and CRTCω
G+A by adding the following schemas:
- 1. s 0 ⊢
- 2. s x = s y ⊢ x = y
- 3. ⊢ x + 0 = x
- 4. ⊢ x + s y = s (x + y)
- 5. ⊢ (RTCv,w s v = w)(0, x)
RTCG+A PAG CAG CRTCω
G+A
β β R&C C & Avron, ’15 Simpson, ’17
20
SLIDE 73 Equivalence: The General Case
For FOLID, implicit (cyclic) induction generally stronger than explicit induction [Berardi & Tatsuta, ’17]
N :
CLKID
“2-hydra”
LKID “2-hydra”
(Henkin counter-model construction)
- However, for signature 0 s
N
LKID 2-hydra
So this does not serve to show RTCG and CRTCG inequivalent
- TC has all inductive definitions available
21
SLIDE 74 Equivalence: The General Case
For FOLID, implicit (cyclic) induction generally stronger than explicit induction [Berardi & Tatsuta, ’17]
- For signature {0, s} + {N}:
- 0,s-axioms ⊢CLKIDω “2-hydra”
- 0,s-axioms
LKID “2-hydra”
(Henkin counter-model construction)
- However, for signature 0 s
N
LKID 2-hydra
So this does not serve to show RTCG and CRTCG inequivalent
- TC has all inductive definitions available
21
SLIDE 75 Equivalence: The General Case
For FOLID, implicit (cyclic) induction generally stronger than explicit induction [Berardi & Tatsuta, ’17]
- For signature {0, s} + {N}:
- 0,s-axioms ⊢CLKIDω “2-hydra”
- 0,s-axioms ̸⊢LKID “2-hydra”
(Henkin counter-model construction)
- However, for signature 0 s
N
LKID 2-hydra
So this does not serve to show RTCG and CRTCG inequivalent
- TC has all inductive definitions available
21
SLIDE 76 Equivalence: The General Case
For FOLID, implicit (cyclic) induction generally stronger than explicit induction [Berardi & Tatsuta, ’17]
- For signature {0, s} + {N}:
- 0,s-axioms ⊢CLKIDω “2-hydra”
- 0,s-axioms ̸⊢LKID “2-hydra”
(Henkin counter-model construction)
- However, for signature {0, s} + {N, ≤}
- 0,s-axioms ⊢LKID 2-hydra
So this does not serve to show RTCG and CRTCG inequivalent
- TC has all inductive definitions available
21
SLIDE 77 Equivalence: The General Case
For FOLID, implicit (cyclic) induction generally stronger than explicit induction [Berardi & Tatsuta, ’17]
- For signature {0, s} + {N}:
- 0,s-axioms ⊢CLKIDω “2-hydra”
- 0,s-axioms ̸⊢LKID “2-hydra”
(Henkin counter-model construction)
- However, for signature {0, s} + {N, ≤}
- 0,s-axioms ⊢LKID 2-hydra
So this does not serve to show RTCG and CRTCω
G inequivalent
- TC has all inductive definitions available
21
SLIDE 78 Summary of Results
standard validity admissible standard validity Henkin validity admissible Henkin validity (cut-free) RTCω
G
(cut-free) ⟨RTC⟩ω
G
⟨CRTC⟩ω
G
CRTCω
G
⟨NCRTC⟩ω
G
NCRTCω
G
RTCG ⟨RTC⟩G ⟨CRTC⟩ω
G+A
CRTCω
G+A
⟨RTC⟩G+A RTCG+A
Thm Thm Thm Thm ⊆ ⊆ ⊆ ⊆ Thm Thm ⊆ ⊆ Thm Thm ? ? ? ? Thm Thm ⊆ ⊆ ⊆ ⊆
22
SLIDE 79 Future Work
- Resolving the open question of the (in)equivalence of
RTCG, NCRTCω
G and CRTCω G.
G and investigating the practicalities of
TC-logic to support automated inductive reasoning.
- Using the uniformity of TC-logic to better study the
relationship between implicit and explicit induction.
- Cuts required in each system
- Relative complexity of proofs
- A uniform framework for coinductive reasoning?
23
SLIDE 80 Recall transitive closure as a fixed point: R+ = µX.ΨR(X) ΨR(S) = R ∪ (R ◦ S) The greatest fixed point gives the transitive co-closure
- Pairs (s, t) in νX.ΨR(X) are those connected by a possibly
infinite number of R-steps
x,y φ)(s, t) to denote that (s, t) is in the
reflexive, transitive co-closure of φ
- E.g. The following formula defines possibly infinite lists
(RTCop
x,y ∃z . x = cons(z, y))(v, []) 24
SLIDE 81
We have the following standard semantics M, v | = (RTCop
x,y φ)(s, t) ⇔
∃(⃗ ai)i≥0 . ∀i ≥ 0 . ai = v(t) ∨ M, v[x := ai, y := ai+1] | = φ We have the following Henkin-semantics H, v | =H (RTCop
x,y φ)(s, t) ⇔
there exists A ∈ D such that v(s) ∈ A and ∀a ∈ A . either a = v(t) or ∃b ∈ A . H, v[x := a, y := b] | =H φ
25