Uniform Inductive Reasoning in Transitive Closure Logic via Infinite - - PowerPoint PPT Presentation

uniform inductive reasoning in transitive closure logic
SMART_READER_LITE
LIVE PREVIEW

Uniform Inductive Reasoning in Transitive Closure Logic via Infinite - - PowerPoint PPT Presentation

Uniform Inductive Reasoning in Transitive Closure Logic via Infinite Descent Computer Science Logic 1 Dept of Computer Science, Cornell University, Ithaca, NY, USA 2 School of Computing, University of Kent, Canterbury, UK Liron Cohen 1 Reuben N.


slide-1
SLIDE 1

Uniform Inductive Reasoning in Transitive Closure Logic via Infinite Descent

Liron Cohen 1 Reuben N. S. Rowe 2 Computer Science Logic Wednesday 5th September 2018, Birmingham, UK

1Dept of Computer Science, Cornell University, Ithaca, NY, USA 2School of Computing, University of Kent, Canterbury, UK

slide-2
SLIDE 2

Non-well-founded Proofs: Syntactic Principles

. . . . . . . .

  • .

. . . .

  • . . . . . . . .

6 (Inference)

  • ·

· ·

  • (Axiom)
  • (Axiom)
  • (Axiom)
  • 5
  • We trace syntactic elements

through judgements

  • At certain points, there is a notion of ‘progression’
  • Each infinite path must admit some infinite descent
  • This global trace condition is an
  • regular property
  • i.e. decidable using Büchi automata

1

slide-3
SLIDE 3

Non-well-founded Proofs: Syntactic Principles

. . . . . . . .

  • .

. . . .

  • . . . . . . . . ∞

(Inference)

  • ·

· ·

  • (Axiom)
  • (Axiom)

(Axiom)

  • We trace syntactic elements

through judgements

  • At certain points, there is a notion of ‘progression’
  • Each infinite path must admit some infinite descent
  • This global trace condition is an
  • regular property
  • i.e. decidable using Büchi automata

1

slide-4
SLIDE 4

Non-well-founded Proofs: Syntactic Principles

. . . . . . . .

  • τ3

. . . . .

  • . . . . . . . . ∞

(Inference)

τ2 · · · τ1

(Axiom)

  • (Axiom)

(Axiom)

  • We trace syntactic elements τ through judgements
  • At certain points, there is a notion of ‘progression’
  • Each infinite path must admit some infinite descent
  • This global trace condition is an
  • regular property
  • i.e. decidable using Büchi automata

1

slide-5
SLIDE 5

Non-well-founded Proofs: Syntactic Principles

. . . . . . . .

  • τ3

. . . . .

  • . . . . . . . . ∞

(Inference)

τ2 · · · τ1

(Axiom)

  • (Axiom)

(Axiom)

  • We trace syntactic elements τ through judgements
  • At certain points, there is a notion of ‘progression’
  • Each infinite path must admit some infinite descent
  • This global trace condition is an
  • regular property
  • i.e. decidable using Büchi automata

1

slide-6
SLIDE 6

Non-well-founded Proofs: Syntactic Principles

. . . . . . . .

  • τ3

. . . . .

  • . . . . . . . . ∞

(Inference)

τ2 · · · τ1

(Axiom)

  • (Axiom)

(Axiom)

  • We trace syntactic elements τ through judgements
  • At certain points, there is a notion of ‘progression’
  • Each infinite path must admit some infinite descent
  • This global trace condition is an
  • regular property
  • i.e. decidable using Büchi automata

1

slide-7
SLIDE 7

Non-well-founded Proofs: Syntactic Principles

. . . . . . . .

  • τ3

. . . . . τ4 . . . . . . . . τ6

(Inference)

τ2 · · · τ1

(Axiom)

  • (Axiom)

(Axiom)

τ5

  • We trace syntactic elements τ through judgements
  • At certain points, there is a notion of ‘progression’
  • Each infinite path must admit some infinite descent
  • This global trace condition is an ω-regular property
  • i.e. decidable using Büchi automata

1

slide-8
SLIDE 8

Non-well-founded Proofs: Soundness via Infinite Descent

. . . . . . . .

  • M3

J3[τ3] . . . . .

  • . . . . . . . . ∞

(Inference)

M2 J2[τ2] · · · M1 J1[τ1]

(Axiom)

  • Assume for contradiction that the conclusion is invalid
  • Local soundness

counter-models M1 M2 M3

  • We demonstrate a mapping into well-founded D

s.t.

  • M1 J1

1

M2 J2

2

M3 J3

3

  • M2 J2

2

M3 J3

3 for progression points

  • Global trace condition

infinitely descending chain in D!

2

slide-9
SLIDE 9

Non-well-founded Proofs: Soundness via Infinite Descent

. . . . . . . .

  • M3

J3[τ3] . . . . .

  • . . . . . . . . ∞

(Inference)

M2 J2[τ2] · · · M1 ⊭ J1[τ1]

(Axiom)

  • Assume for contradiction that the conclusion is invalid
  • Local soundness

counter-models M1 M2 M3

  • We demonstrate a mapping into well-founded D

s.t.

  • M1 J1

1

M2 J2

2

M3 J3

3

  • M2 J2

2

M3 J3

3 for progression points

  • Global trace condition

infinitely descending chain in D!

2

slide-10
SLIDE 10

Non-well-founded Proofs: Soundness via Infinite Descent

. . . . . . . .

  • M3 ⊭ J3[τ3]

. . . . .

  • . . . . . . . . ∞

(Inference)

M2 ⊭ J2[τ2] · · · M1 ⊭ J1[τ1]

(Axiom)

  • Assume for contradiction that the conclusion is invalid
  • Local soundness ⇒ counter-models M1, M2, M3, . . .
  • We demonstrate a mapping into well-founded D

s.t.

  • M1 J1

1

M2 J2

2

M3 J3

3

  • M2 J2

2

M3 J3

3 for progression points

  • Global trace condition

infinitely descending chain in D!

2

slide-11
SLIDE 11

Non-well-founded Proofs: Soundness via Infinite Descent

. . . . . . . .

  • M3 ⊭ J3[τ3]

. . . . .

  • . . . . . . . . ∞

(Inference)

M2 ⊭ J2[τ2] · · · M1 ⊭ J1[τ1]

(Axiom)

  • Assume for contradiction that the conclusion is invalid
  • Local soundness ⇒ counter-models M1, M2, M3, . . .
  • We demonstrate a mapping into well-founded (D, <) s.t.
  • M1J1[τ1] ≤ M2J2[τ2] ≤ M3J3[τ3] ≤ . . .
  • M2 J2

2

M3 J3

3 for progression points

  • Global trace condition

infinitely descending chain in D!

2

slide-12
SLIDE 12

Non-well-founded Proofs: Soundness via Infinite Descent

. . . . . . . .

  • M3 ⊭ J3[τ3]

. . . . .

  • . . . . . . . . ∞

(Inference)

M2 ⊭ J2[τ2] · · · M1 ⊭ J1[τ1]

(Axiom)

  • Assume for contradiction that the conclusion is invalid
  • Local soundness ⇒ counter-models M1, M2, M3, . . .
  • We demonstrate a mapping into well-founded (D, <) s.t.
  • M1J1[τ1] ≤ M2J2[τ2] ≤ M3J3[τ3] ≤ . . .
  • M2J2[τ2] < M3J3[τ3] for progression points
  • Global trace condition

infinitely descending chain in D!

2

slide-13
SLIDE 13

Non-well-founded Proofs: Soundness via Infinite Descent

. . . . . . . .

  • M3 ⊭ J3[τ3]

. . . . .

  • . . . . . . . . ∞

(Inference)

M2 ⊭ J2[τ2] · · · M1 ⊭ J1[τ1]

(Axiom)

  • Assume for contradiction that the conclusion is invalid
  • Local soundness ⇒ counter-models M1, M2, M3, . . .
  • We demonstrate a mapping into well-founded (D, <) s.t.
  • M1J1[τ1] ≤ M2J2[τ2] ≤ M3J3[τ3] ≤ . . .
  • M2J2[τ2] < M3J3[τ3] for progression points
  • Global trace condition ⇒ infinitely descending chain in D!

2

slide-14
SLIDE 14

Why Study Non-well-founded Proof Theory?

Non-well-founded/cyclic proof theory allows to:

  • Obtain (cut-free) completeness results

µ-calculus: Fortier&Santocanale, Afshari&Leigh, Doumane Et Al. Kleene Algebra: Das&Pous

  • Effectively search for proofs of inductive properties
  • Automatically verify properties of programs

[Brotherston, Bornat, Calcagno, Gorogiannis, Peterson, R, Tellez]

  • Formally study explicit induction vs infinite descent

µ-calculus: Santocanale, Sprenger&Dam, Baelde Et Al., Nollet Et Al.

  • Ind. Defs: Brotherston&Simpson, Berardi&Tatsuta

Arithmetic: Simpson, Das 3

slide-15
SLIDE 15

Example: Martin-Löf-style Inductive Predicates in FOL

  • We give productions for each ‘inductive’ predicate Pi

Q1(⃗ s1) . . . Qn(⃗ sn) Pi( ⃗ t)

  • We take the smallest interpretation closed under the rules

N 0 N x N sx E 0 O x E sx E x O sx N = {0, s0, ss0, . . . , sn 0, . . . } E = {0, ss0, . . . , s2n 0, . . . } O = {s0, . . . , s2n+1 0, . . . }

4

slide-16
SLIDE 16

Example: Martin-Löf-style Inductive Predicates in FOL

  • We give productions for each ‘inductive’ predicate Pi

Q1(⃗ s1) . . . Qn(⃗ sn) Pi( ⃗ t)

  • We take the smallest interpretation closed under the rules

N 0 N x N sx E 0 O x E sx E x O sx N0 = { 0 s0 ss0 sn 0 } E0 = { 0 ss0 s2n 0 } O0 = { s0 s2n

1 0

}

4

slide-17
SLIDE 17

Example: Martin-Löf-style Inductive Predicates in FOL

  • We give productions for each ‘inductive’ predicate Pi

Q1(⃗ s1) . . . Qn(⃗ sn) Pi( ⃗ t)

  • We take the smallest interpretation closed under the rules

N 0 N x N sx E 0 O x E sx E x O sx N1 = {0, s0 ss0 sn 0 } E1 = {0, ss0 s2n 0 } O1 = { s0 s2n

1 0

}

4

slide-18
SLIDE 18

Example: Martin-Löf-style Inductive Predicates in FOL

  • We give productions for each ‘inductive’ predicate Pi

Q1(⃗ s1) . . . Qn(⃗ sn) Pi( ⃗ t)

  • We take the smallest interpretation closed under the rules

N 0 N x N sx E 0 O x E sx E x O sx N2 = {0, s0, ss0 sn 0 } E2 = {0, ss0 s2n 0 } O2 = {s0, s2n

1 0

}

4

slide-19
SLIDE 19

Example: Martin-Löf-style Inductive Predicates in FOL

  • We give productions for each ‘inductive’ predicate Pi

Q1(⃗ s1) . . . Qn(⃗ sn) Pi( ⃗ t)

  • We take the smallest interpretation closed under the rules

N 0 N x N sx E 0 O x E sx E x O sx N3 = {0, s0, ss0, sn 0 } E3 = {0, ss0, s2n 0 } O3 = {s0, s2n

1 0

}

4

slide-20
SLIDE 20

Example: Martin-Löf-style Inductive Predicates in FOL

  • We give productions for each ‘inductive’ predicate Pi

Q1(⃗ s1) . . . Qn(⃗ sn) Pi( ⃗ t)

  • We take the smallest interpretation closed under the rules

N 0 N x N sx E 0 O x E sx E x O sx Nω = {0, s0, ss0, . . . , sn 0, . . . } Eω = {0, ss0, . . . , s2n 0, . . . } Oω = {s0, . . . , s2n+1 0, . . . }

4

slide-21
SLIDE 21

Example: A Cyclic Proof

⇒ N 0 N x ⇒ N sx ⇒ E 0 O x ⇒ E sx E x ⇒ O sx (N R1) ⊢ N 0 (=L) x = 0 ⊢ N x E x ⊢ N x (Subst) E z ⊢ N z (N R2) E z ⊢ N sz (=L) y = sz, E z ⊢ N y (Case O) O y ⊢ N y (N R2) O y ⊢ N sy (=L) x = sy, O y ⊢ N x (Case E) E x ⊢ N x

5

slide-22
SLIDE 22

Example: A Cyclic Proof

⇒ N 0 N x ⇒ N sx ⇒ E 0 O x ⇒ E sx E x ⇒ O sx (N R1) ⊢ N 0 (=L) x = 0 ⊢ N x E x ⊢ N x (Subst) E z ⊢ N z (N R2) E z ⊢ N sz (=L) y = sz, E z ⊢ N y (Case O) O y ⊢ N y (N R2) O y ⊢ N sy (=L) x = sy, O y ⊢ N x (Case E) E x ⊢ N x Left unfolding rule

5

slide-23
SLIDE 23

Example: A Cyclic Proof

⇒ N 0 N x ⇒ N sx ⇒ E 0 O x ⇒ E sx E x ⇒ O sx (N R1) ⊢ N 0 (=L) x = 0 ⊢ N x E x ⊢ N x (Subst) E z ⊢ N z (N R2) E z ⊢ N sz (=L) y = sz, E z ⊢ N y (Case O) O y ⊢ N y (N R2) O y ⊢ N sy (=L) x = sy, O y ⊢ N x (Case E) E x ⊢ N x Left unfolding rule

5

slide-24
SLIDE 24

Example: A Cyclic Proof

⇒ N 0 N x ⇒ N sx ⇒ E 0 O x ⇒ E sx E x ⇒ O sx (N R1) ⊢ N 0 (=L) x = 0 ⊢ N x E x ⊢ N x (Subst) E z ⊢ N z (N R2) E z ⊢ N sz (=L) y = sz, E z ⊢ N y (Case O) O y ⊢ N y (N R2) O y ⊢ N sy (=L) x = sy, O y ⊢ N x (Case E) E x ⊢ N x Right unfolding rule

5

slide-25
SLIDE 25

Example: A Cyclic Proof

⇒ N 0 N x ⇒ N sx ⇒ E 0 O x ⇒ E sx E x ⇒ O sx (N R1) ⊢ N 0 (=L) x = 0 ⊢ N x E x ⊢ N x (Subst) E z ⊢ N z (N R2) E z ⊢ N sz (=L) y = sz, E z ⊢ N y (Case O) O y ⊢ N y (N R2) O y ⊢ N sy (=L) x = sy, O y ⊢ N x (Case E) E x ⊢ N x Right unfolding rule

5

slide-26
SLIDE 26

Example: A Cyclic Proof

⇒ N 0 N x ⇒ N sx ⇒ E 0 O x ⇒ E sx E x ⇒ O sx (N R1) ⊢ N 0 (=L) x = 0 ⊢ N x E x ⊢ N x (Subst) E z ⊢ N z (N R2) E z ⊢ N sz (=L) y = sz, E z ⊢ N y (Case O) O y ⊢ N y (N R2) O y ⊢ N sy (=L) x = sy, O y ⊢ N x (Case E) E x ⊢ N x Right unfolding rule

5

slide-27
SLIDE 27

Example: A Cyclic Proof

⇒ N 0 N x ⇒ N sx ⇒ E 0 O x ⇒ E sx E x ⇒ O sx (N R1) ⊢ N 0 (=L) x = 0 ⊢ N x E x ⊢ N x (Subst) E z ⊢ N z (N R2) E z ⊢ N sz (=L) y = sz, E z ⊢ N y (Case O) O y ⊢ N y (N R2) O y ⊢ N sy (=L) x = sy, O y ⊢ N x (Case E) E x ⊢ N x

5

slide-28
SLIDE 28

Example: A Cyclic Proof

⇒ N 0 N x ⇒ N sx ⇒ E 0 O x ⇒ E sx E x ⇒ O sx (N R1) ⊢ N 0 (=L) x = 0 ⊢ N x E x ⊢ N x (Subst) E z ⊢ N z (N R2) E z ⊢ N sz (=L) y = sz, E z ⊢ N y (Case O) O y ⊢ N y (N R2) O y ⊢ N sy (=L) x = sy, O y ⊢ N x (Case E) E x ⊢ N x

5

slide-29
SLIDE 29

Cyclic Proof vs Explicit Induction

  • To reason explicitly by induction is more complex,

involving an induction formula F

Γ ⊢ INDQi(F) (∀Qi mutually recursive with P) Γ, F( ⃗ t) ⊢ ∆ Γ, P⃗ t ⊢ ∆

  • E.g. the productions ⇒ N 0 and N x ⇒ N sx give

Γ ⊢ F(0) Γ, F(x) ⊢ F(sx) Γ, F(t) ⊢ ∆ Γ, N t ⊢ ∆

  • Implicit induction using unfolding conceptually simpler
  • Induction schemes captured using cycles

6

slide-30
SLIDE 30

Non-well-founded Proofs: Some Meta-theory

For FOL with Inductive Definitions:

  • Non-well-founded proof system LKIDω sound and cut-free complete for

standard semantics

  • Explicit induction system LKID sound and cut-free complete for a

Henkin-style semantics

  • Cyclic system CLKIDω subsumes explicit induction

[Brotherston & Simpson, LICS’07, JL&C’11]

  • CLKIDω and LKID equivalent under arithmetic

[Berardi & Tatsuta, LICS’17] [Simpson, FoSSaCS’17]

  • CLKIDω and LKID not equivalent in general (2-Hydra counterexample)

[Berardi & Tatsuta, FoSSaCS’17]

7

slide-31
SLIDE 31

Transitive Closure Logic

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]) ∨ . . .

8

slide-32
SLIDE 32

Transitive Closure Logic

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

8

slide-33
SLIDE 33

Transitive Closure Logic

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

. . .

8

slide-34
SLIDE 34

Transitive Closure Logic

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)

. . .

8

slide-35
SLIDE 35

Transitive Closure Logic

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)

φ φ φ φ

8

slide-36
SLIDE 36

Example: Arithmetic in TC

  • Take a signature Σ = {0, s} + equality

and pairing Nat(x) ≡ (RTCv,w sv = w)(0, x) x y RTCv w sv w x y “x y z” RTCv w n1 n2 v n1 n2 w sn1 sn2 0 y z x

  • The following characterise natural numbers in TC:

x sx x y s x s y x y x Nat x

s0 ss0 sn-1 0 x

s· = · s· = · s· = · s· = ·

0 y s0 sy ss0 ssy sz 0 sz y 9

slide-37
SLIDE 37

Example: Arithmetic in TC

  • Take a signature Σ = {0, s} + equality

and pairing Nat(x) ≡ (RTCv,w sv = w)(0, x) x ≤ y ≡ (RTCv,w sv = w)(x, y) “x y z” RTCv w n1 n2 v n1 n2 w sn1 sn2 0 y z x

  • The following characterise natural numbers in TC:

x sx x y s x s y x y x Nat x

x sx ssx sn-1 x y

s· = · s· = · s· = · s· = ·

0 y s0 sy ss0 ssy sz 0 sz y 9

slide-38
SLIDE 38

Example: Arithmetic in TC

  • Take a signature Σ = {0, s} + equality and pairing

Nat(x) ≡ (RTCv,w sv = w)(0, x) x ≤ y ≡ (RTCv,w sv = w)(x, y) “x = y + z” ≡ (RTCv,w ∃n1, n2 . v = ⟨n1, n2⟩ ∧ w = ⟨sn1, sn2⟩)(⟨0, y⟩, ⟨z, x⟩)

  • The following characterise natural numbers in TC:

x sx x y s x s y x y x Nat x

x sx ssx sn 1 x y

s s s s

0 y s0 sy ss0 ssy sz 0 sz y 9

slide-39
SLIDE 39

Example: Arithmetic in TC

  • Take a signature Σ = {0, s} + equality and pairing

Nat(x) ≡ (RTCv,w sv = w)(0, x) x ≤ y ≡ (RTCv,w sv = w)(x, y) “x = y + z” ≡ (RTCv,w ∃n1, n2 . v = ⟨n1, n2⟩ ∧ w = ⟨sn1, sn2⟩)(⟨0, y⟩, ⟨z, x⟩)

  • The following characterise natural numbers in TC:

x sx x y s x s y x y x Nat x

x sx ssx sn 1 x y

s s s s

⟨0, y⟩ s0 sy ss0 ssy sz 0 sz y 9

slide-40
SLIDE 40

Example: Arithmetic in TC

  • Take a signature Σ = {0, s} + equality and pairing

Nat(x) ≡ (RTCv,w sv = w)(0, x) x ≤ y ≡ (RTCv,w sv = w)(x, y) “x = y + z” ≡ (RTCv,w ∃n1, n2 . v = ⟨n1, n2⟩ ∧ w = ⟨sn1, sn2⟩)(⟨0, y⟩, ⟨z, x⟩)

  • The following characterise natural numbers in TC:

x sx x y s x s y x y x Nat x

x sx ssx sn 1 x y

s s s s

⟨0, y⟩ ⟨s0, sy⟩ ss0 ssy sz 0 sz y 9

slide-41
SLIDE 41

Example: Arithmetic in TC

  • Take a signature Σ = {0, s} + equality and pairing

Nat(x) ≡ (RTCv,w sv = w)(0, x) x ≤ y ≡ (RTCv,w sv = w)(x, y) “x = y + z” ≡ (RTCv,w ∃n1, n2 . v = ⟨n1, n2⟩ ∧ w = ⟨sn1, sn2⟩)(⟨0, y⟩, ⟨z, x⟩)

  • The following characterise natural numbers in TC:

x sx x y s x s y x y x Nat x

x sx ssx sn 1 x y

s s s s

⟨0, y⟩ ⟨s0, sy⟩ ⟨ss0, ssy⟩ sz 0 sz y 9

slide-42
SLIDE 42

Example: Arithmetic in TC

  • Take a signature Σ = {0, s} + equality and pairing

Nat(x) ≡ (RTCv,w sv = w)(0, x) x ≤ y ≡ (RTCv,w sv = w)(x, y) “x = y + z” ≡ (RTCv,w ∃n1, n2 . v = ⟨n1, n2⟩ ∧ w = ⟨sn1, sn2⟩)(⟨0, y⟩, ⟨z, x⟩)

  • The following characterise natural numbers in TC:

x sx x y s x s y x y x Nat x

x sx ssx sn 1 x y

s s s s

⟨0, y⟩ ⟨s0, sy⟩ ⟨ss0, ssy⟩ ⟨sz 0, sz y⟩ 9

slide-43
SLIDE 43

Example: Arithmetic in TC

  • Take a signature Σ = {0, s} + equality and pairing

Nat(x) ≡ (RTCv,w sv = w)(0, x) x ≤ y ≡ (RTCv,w sv = w)(x, y) “x = y + z” ≡ (RTCv,w ∃n1, n2 . v = ⟨n1, n2⟩ ∧ w = ⟨sn1, sn2⟩)(⟨0, y⟩, ⟨z, x⟩)

  • The following characterise natural numbers in TC:

∀x . sx ̸= 0 ∀x, y . s(x) = s(y) → x = y ∀x . Nat(x)

x sx ssx sn 1 x y

s s s s

0 y s0 sy ss0 ssy sz 0 sz y 9

slide-44
SLIDE 44

Why Study TC and its Non-well-founded Proof Theory?

  • Provides a uniform way to express inductive definitions
  • Single framework for modelling many areas of CS
  • Better for automated reasoning?
  • It is a minimal, yet expressive, extension of FOL

Theorem (Avron ’03, Thm. 3)

All finitely inductively definable relations† are definable in TC.

  • A. Avron, Transitive Closure and the Mechanization of Mathematics.
  • Alternative setting for studying cyclic vs explicit induction
  • No need to ‘choose’ predicates up-front
  • Uniformity makes meta-theory more straightforward
  • Displays some subtle but important differences with FOL+ID

†as formalised in: S. Feferman, Finitary Inductively Presented Logics, 1989

10

slide-45
SLIDE 45

Implicit and Explicit Induction Rules for TC

reflexivity ⊢ (RTCx,y φ)(t, t) step Γ ⊢ ∆, (RTCx,y φ)(s, r) Γ ⊢ ∆, φ[r/x, t/y] Γ ⊢ ∆, (RTCx,y φ)(s, t) case-split Γ, s = t ⊢ ∆ Γ, (RTCx,y φ)(s, z), φ[z/x, t/y] ⊢ ∆

(z fresh)

Γ, (RTCx,y φ)(s, t) ⊢ ∆ induction s x x x y y x t x RTCx y s t x fv and y fv

11

slide-46
SLIDE 46

Implicit and Explicit Induction Rules for TC

reflexivity ⊢ (RTCx,y φ)(t, t) step Γ ⊢ ∆, (RTCx,y φ)(s, r) Γ ⊢ ∆, φ[r/x, t/y] Γ ⊢ ∆, (RTCx,y φ)(s, t) case-split Γ, s = t ⊢ ∆ Γ, (RTCx,y φ)(s, z), φ[z/x, t/y] ⊢ ∆

(z fresh)

Γ, (RTCx,y φ)(s, t) ⊢ ∆ induction s x x x y y x t x RTCx y s t x fv and y fv

11

slide-47
SLIDE 47

Implicit and Explicit Induction Rules for TC

reflexivity ⊢ (RTCx,y φ)(t, t) step Γ ⊢ ∆, (RTCx,y φ)(s, r) Γ ⊢ ∆, φ[r/x, t/y] Γ ⊢ ∆, (RTCx,y φ)(s, t) case-split Γ, s = t ⊢ ∆ Γ, (RTCx,y φ)(s, z), φ[z/x, t/y] ⊢ ∆

(z fresh)

Γ, (RTCx,y φ)(s, t) ⊢ ∆ induction Γ ⊢ ∆, ψ[s/x] Γ, ψ(x), φ(x, y) ⊢ ∆, ψ[y/x] Γ, ψ[t/x] ⊢ ∆ Γ, (RTCx,y φ)(s, t) ⊢ ∆ x ̸∈ fv(Γ, ∆) and y ̸∈ fv(Γ, ∆, ψ)

11

slide-48
SLIDE 48

Proof-theoretic Results for TC

  • Non-well-founded system RTCω

G sound + cut-free complete for

standard semantics

  • Explicit induction system RTCG sound + cut-free complete for a

Henkin-style semantics

  • Cyclic system subsumes explicit induction

RTCG ⊆ NCRTCω

G (non-overlapping cycles) ⊆ CRTCω G

  • Systems with arithmetic are equivalent
  • 2-Hydra counterexample does not show RTCG

CRTCG

  • Relies on not being able to express ordering on numbers
  • TC allows all inductive definitions ‘at once’

RTCG A PAG CAG CRTCG A

12

slide-49
SLIDE 49

Proof-theoretic Results for TC

  • Non-well-founded system RTCω

G sound + cut-free complete for

standard semantics

  • Explicit induction system RTCG sound + cut-free complete for a

Henkin-style semantics

  • Cyclic system subsumes explicit induction

RTCG ⊆ NCRTCω

G (non-overlapping cycles) ⊆ CRTCω G

  • Systems with arithmetic are equivalent
  • 2-Hydra counterexample does not show RTCG

CRTCG

  • Relies on not being able to express ordering on numbers
  • TC allows all inductive definitions ‘at once’

RTCG+A PAG CAG CRTCω

G +A

12

slide-50
SLIDE 50

Proof-theoretic Results for TC

  • Non-well-founded system RTCω

G sound + cut-free complete for

standard semantics

  • Explicit induction system RTCG sound + cut-free complete for a

Henkin-style semantics

  • Cyclic system subsumes explicit induction

RTCG ⊆ NCRTCω

G (non-overlapping cycles) ⊆ CRTCω G

  • Systems with arithmetic are equivalent
  • 2-Hydra counterexample does not show RTCG

CRTCG

  • Relies on not being able to express ordering on numbers
  • TC allows all inductive definitions ‘at once’

RTCG+A PAG CAG CRTCω

G +A

C & Avron, ’15

12

slide-51
SLIDE 51

Proof-theoretic Results for TC

  • Non-well-founded system RTCω

G sound + cut-free complete for

standard semantics

  • Explicit induction system RTCG sound + cut-free complete for a

Henkin-style semantics

  • Cyclic system subsumes explicit induction

RTCG ⊆ NCRTCω

G (non-overlapping cycles) ⊆ CRTCω G

  • Systems with arithmetic are equivalent
  • 2-Hydra counterexample does not show RTCG

CRTCG

  • Relies on not being able to express ordering on numbers
  • TC allows all inductive definitions ‘at once’

RTCG+A PAG CAG CRTCω

G +A

C & Avron, ’15 Simpson, ’17

12

slide-52
SLIDE 52

Proof-theoretic Results for TC

  • Non-well-founded system RTCω

G sound + cut-free complete for

standard semantics

  • Explicit induction system RTCG sound + cut-free complete for a

Henkin-style semantics

  • Cyclic system subsumes explicit induction

RTCG ⊆ NCRTCω

G (non-overlapping cycles) ⊆ CRTCω G

  • Systems with arithmetic are equivalent
  • 2-Hydra counterexample does not show RTCG

CRTCG

  • Relies on not being able to express ordering on numbers
  • TC allows all inductive definitions ‘at once’

RTCG+A PAG CAG CRTCω

G +A

C&R C & Avron, ’15 Simpson, ’17

12

slide-53
SLIDE 53

Proof-theoretic Results for TC

  • Non-well-founded system RTCω

G sound + cut-free complete for

standard semantics

  • Explicit induction system RTCG sound + cut-free complete for a

Henkin-style semantics

  • Cyclic system subsumes explicit induction

RTCG ⊆ NCRTCω

G (non-overlapping cycles) ⊆ CRTCω G

  • Systems with arithmetic are equivalent
  • 2-Hydra counterexample does not show RTCG ⊊ CRTCω

G

  • Relies on not being able to express ordering on numbers
  • TC allows all inductive definitions ‘at once’

PAG CAG

12

slide-54
SLIDE 54

Future Work

  • open question of equivalence for RTCG, NCRTCω

G and CRTCω G

  • Implementing CRTCω

G to support automated reasoning.

  • Use TC to better study implicit vs explicit induction.
  • Adapt TC for coinductive reasoning?

13

slide-55
SLIDE 55

(Non-reflexive) transitive closure is a least 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

  • We can write (RTCop

x,y φ)(s, t) to denote that (s, t) is in the

reflexive, transitive co-closure of φ

slide-56
SLIDE 56

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] | = φ E.g. The following formula defines possibly infinite lists (RTCop

x,y ∃z . x = cons(z, y))(v, [])