Coinductive Predicates and Final Sequences in a Fibration
Ichiro Hasuo Kenta Cho Toshiki Kataoka
University of Tokyo (JP)
Bart Jacobs
Radboud Univ. Nijmegen (NL)
MFPS (Tulane) 2013/ 6/24
Coinductive Predicates and Final Sequences in a Fibration Ichiro - - PowerPoint PPT Presentation
Coinductive Predicates and Final Sequences in a Fibration Ichiro Hasuo Bart Jacobs Kenta Cho Toshiki Kataoka Radboud Univ. Nijmegen (NL) University of Tokyo (JP) MFPS (Tulane) 2013/ 6/24 Coinduction Hasuo (Tokyo) O / / O
Ichiro Hasuo Kenta Cho Toshiki Kataoka
University of Tokyo (JP)
Bart Jacobs
Radboud Univ. Nijmegen (NL)
MFPS (Tulane) 2013/ 6/24
Hasuo (Tokyo)
Hasuo (Tokyo)
In C ?
F X / _ _ _ _ _ F Z X c O beh(c) / _ _ _ _ _ _ Z final ∼ = O
Hasuo (Tokyo)
In C ? In a fibration !! This work: final coalgebra in p; final sequcence in p
F X / _ _ _ _ _ F Z X c O beh(c) / _ _ _ _ _ _ Z final ∼ = O
Hasuo (Tokyo)
In C ? In a fibration !! This work: final coalgebra in p; final sequcence in p
F X / _ _ _ _ _ F Z X c O beh(c) / _ _ _ _ _ _ Z final ∼ = O
Hasuo (Tokyo)
In C ? In a fibration !! This work: final coalgebra in p; final sequcence in p
F X / _ _ _ _ _ F Z X c O beh(c) / _ _ _ _ _ _ Z final ∼ = O
{ F-behaviors }
Hasuo (Tokyo)
In C ? In a fibration !! This work: final coalgebra in p; final sequcence in p
F X / _ _ _ _ _ F Z X c O beh(c) / _ _ _ _ _ _ Z final ∼ = O
{ F-behaviors } { F-behaviors } + coinductive predicate
Hasuo (Tokyo)
Hasuo (Tokyo)
Kripke frame
Hasuo (Tokyo)
Kripke frame
Hasuo (Tokyo)
x ⋯ ⋰ ⋱
Kripke frame
Hasuo (Tokyo)
x ⋯ ⋰ ⋱
Kripke frame
| = νu.u ∼ = (νu.u)
Hasuo (Tokyo)
x ⋯ ⋰ ⋱
Kripke frame
x’
| = νu.u ∼ = (νu.u)
Hasuo (Tokyo)
x ⋯ ⋰ ⋱
Kripke frame
x’
| = νu.u ∼ = (νu.u) | = νu.u ∼ = (νu.u)
Hasuo (Tokyo)
x ⋯ ⋰ ⋱
Kripke frame
x’ x’’
| = νu.u ∼ = (νu.u) | = νu.u ∼ = (νu.u)
Hasuo (Tokyo)
x ⋯ ⋰ ⋱
Kripke frame
x’ x’’
| = νu.u ∼ = (νu.u) | = νu.u ∼ = (νu.u)
Hasuo (Tokyo)
x ⋯ ⋰ ⋱
“There is an infinite path” Kripke frame
x’ x’’
| = νu.u ∼ = (νu.u) | = νu.u ∼ = (νu.u)
Hasuo (Tokyo)
x ⋯ ⋰ ⋱
“There is an infinite path” Kripke frame
x’ x’’
| = νu.u ∼ = (νu.u) | = νu.u ∼ = (νu.u)
(current st.) ⊨ P witnesses (next st.) ⊨ P
Hasuo (Tokyo)
Kripke frame Bisimilarity ∼ (current st.) ⊨ P witnesses (next st.) ⊨ P
x ∼ ∼ ∼ y, x → x0 = ⇒ y → ∃y0 s.t. x0 ∼ ∼ ∼ y0
Hasuo (Tokyo)
Hasuo (Tokyo)
[Giménez, TYPES’95] [Bertot & Komendantskaya, CMCS’08] [Nakano, CPP’12]
Hasuo (Tokyo)
[Giménez, TYPES’95] [Bertot & Komendantskaya, CMCS’08] [Nakano, CPP’12]
Hasuo (Tokyo)
[Giménez, TYPES’95] [Bertot & Komendantskaya, CMCS’08] [Nakano, CPP’12]
Fp
µu. p Xu = ¬(νu. ¬p Xu)
¬G¬p
Hasuo (Tokyo)
[Giménez, TYPES’95] [Bertot & Komendantskaya, CMCS’08] [Nakano, CPP’12]
[Hur, Neis, Dreyer & Vafeiadis, POPL ’13] [Bonchi & Pous, POPL ’13]
Fp
µu. p Xu = ¬(νu. ¬p Xu)
¬G¬p
Hasuo (Tokyo)
U
{X X | X U = }
{x X | c(x) U = }
X c
νu. u = gfp
ϕ 2PX c−1 2X
Hasuo (Tokyo)
U
{X X | X U = }
{x X | c(x) U = }
X c
νu. u = gfp
ϕ 2PX c−1 2X
U
X0
Hasuo (Tokyo)
U
{X X | X U = }
{x X | c(x) U = }
X c
νu. u = gfp
ϕ 2PX c−1 2X
U
c(x)
x
U
X0
Hasuo (Tokyo)
U
{X X | X U = }
{x X | c(x) U = }
X c
νu. u = gfp
ϕ 2PX c−1 2X
U
c(x)
x
U
X0
Hasuo (Tokyo)
U
{X X | X U = }
{x X | c(x) U = }
X c
νu. u = gfp
ϕ 2PX c−1 2X
1st ans. (Knaster-Tarski) is monotone Postfixed points (invariants) form a complete lattice Its maximum (greatest invariant) is the gfp
U
c(x)
x
c−1 ϕ : 2X 2X
{U | U (c−1 ϕ)U}
U
X0
Hasuo (Tokyo)
U
{X X | X U = }
{x X | c(x) U = }
X c
νu. u = gfp
ϕ 2PX c−1 2X
1st ans. (Knaster-Tarski) is monotone Postfixed points (invariants) form a complete lattice Its maximum (greatest invariant) is the gfp
U
c(x)
x
c−1 ϕ : 2X 2X
{U | U (c−1 ϕ)U}
n
r e a l l y a “ c
s t r u c t i
” . . .
U
X0
Hasuo (Tokyo)
P(X) X c
νu. u = gfp
ϕ 2PX c−1 2X
2nd ans. (Inductive constr. [Cousot & Cousot ’79]) Stabilize ➜ gfp But when? ω, if φ is ∩-preserving... not now
Hasuo (Tokyo)
P(X) X c
νu. u = gfp
ϕ 2PX c−1 2X
2nd ans. (Inductive constr. [Cousot & Cousot ’79]) Stabilize ➜ gfp But when? ω, if φ is ∩-preserving... not now
X
Hasuo (Tokyo)
P(X) X c
νu. u = gfp
ϕ 2PX c−1 2X
2nd ans. (Inductive constr. [Cousot & Cousot ’79]) Stabilize ➜ gfp But when? ω, if φ is ∩-preserving... not now
X
the whole space
Hasuo (Tokyo)
P(X) X c
νu. u = gfp
ϕ 2PX c−1 2X
2nd ans. (Inductive constr. [Cousot & Cousot ’79]) Stabilize ➜ gfp But when? ω, if φ is ∩-preserving... not now
X
∃ path length ≥ 1 the whole space
Hasuo (Tokyo)
P(X) X c
νu. u = gfp
ϕ 2PX c−1 2X
2nd ans. (Inductive constr. [Cousot & Cousot ’79]) Stabilize ➜ gfp But when? ω, if φ is ∩-preserving... not now
X
∃ path length ≥ 1 ∃ path length ≥ 2 the whole space
Hasuo (Tokyo)
P(X) X c
νu. u = gfp
ϕ 2PX c−1 2X
2nd ans. (Inductive constr. [Cousot & Cousot ’79]) Stabilize ➜ gfp
X
∃ path length ≥ 1 ∃ path length ≥ 2 the whole space
Hasuo (Tokyo)
P(X) X c
νu. u = gfp
ϕ 2PX c−1 2X
2nd ans. (Inductive constr. [Cousot & Cousot ’79]) Stabilize ➜ gfp But when? ω, if φ is ∩-preserving... not now
X
∃ path length ≥ 1 ∃ path length ≥ 2 the whole space
Hasuo (Tokyo)
X
Hasuo (Tokyo)
X
1 2
Hasuo (Tokyo)
X
1 2
| =
n, but | = νu. u
Hasuo (Tokyo)
State space bound [Cousot & Cousot, ’79] |X| steps
X
1 2
| =
n, but | = νu. u
Hasuo (Tokyo)
State space bound [Cousot & Cousot, ’79] |X| steps “Behavioral bound” [Hennessy & Milner, ’85] ω steps if finitely branching!
X
1 2
| =
n, but | = νu. u
Hasuo (Tokyo)
Theorem. Let a Kripke frame
P(X) X c
be finitely branching. Then X
stabilizes after ω steps.
Hasuo (Tokyo)
Proof: Suffices to show is an invariant.
Theorem. Let a Kripke frame
P(X) X c
be finitely branching. Then X
stabilizes after ω steps.
n
Hasuo (Tokyo)
Proof: Suffices to show is an invariant.
Theorem. Let a Kripke frame
P(X) X c
be finitely branching. Then X
stabilizes after ω steps.
n
x x2 ⋯ x1 xk
Hasuo (Tokyo)
Proof: Suffices to show is an invariant.
Theorem. Let a Kripke frame
P(X) X c
be finitely branching. Then X
stabilizes after ω steps.
n
x x2 ⋯ x1 xk
n
Hasuo (Tokyo)
Proof: Suffices to show is an invariant.
Theorem. Let a Kripke frame
P(X) X c
be finitely branching. Then X
stabilizes after ω steps.
n
x x2 ⋯ x1 xk
n
Hasuo (Tokyo)
Proof: Suffices to show is an invariant.
Theorem. Let a Kripke frame
P(X) X c
be finitely branching. Then X
stabilizes after ω steps.
n
x x2 ⋯ x1 xk
1
n
Hasuo (Tokyo)
Proof: Suffices to show is an invariant.
Theorem. Let a Kripke frame
P(X) X c
be finitely branching. Then X
stabilizes after ω steps.
n
x x2 ⋯ x1 xk
1 2
n
Hasuo (Tokyo)
Proof: Suffices to show is an invariant.
Theorem. Let a Kripke frame
P(X) X c
be finitely branching. Then X
stabilizes after ω steps.
n
x x2 ⋯ x1 xk
1 2 3
n
Hasuo (Tokyo)
Proof: Suffices to show is an invariant.
Theorem. Let a Kripke frame
P(X) X c
be finitely branching. Then X
stabilizes after ω steps.
n
x x2 ⋯ x1 xk
1 2 3
n
⋮ ⋮ ⋮
Hasuo (Tokyo)
Proof: Suffices to show is an invariant.
Theorem. Let a Kripke frame
P(X) X c
be finitely branching. Then X
stabilizes after ω steps.
n
x x2 ⋯ x1 xk
1 2 3
n
⋮ ⋮ ⋮
i [1, k] s.t. xi | = n for infinitely many n
Hasuo (Tokyo)
Hasuo (Tokyo)
(current st.) ⊨ P witnesses (next st.) ⊨ P
Hasuo (Tokyo)
(current st.) ⊨ P witnesses (next st.) ⊨ P
P(X) X c
νu. u = gfp
ϕ 2PX c−1 2X
Hasuo (Tokyo)
(current st.) ⊨ P witnesses (next st.) ⊨ P
P(X) X c
νu. u = gfp
ϕ 2PX c−1 2X
Hasuo (Tokyo)
(current st.) ⊨ P witnesses (next st.) ⊨ P By Knaster-Tarski
P(X) X c
νu. u = gfp
ϕ 2PX c−1 2X
Hasuo (Tokyo)
(current st.) ⊨ P witnesses (next st.) ⊨ P By Knaster-Tarski Inductive constr.
P(X) X c
νu. u = gfp
ϕ 2PX c−1 2X
X
Hasuo (Tokyo)
(current st.) ⊨ P witnesses (next st.) ⊨ P By Knaster-Tarski Inductive constr. State space bound vs. “behavioral bound”
P(X) X c
νu. u = gfp
ϕ 2PX c−1 2X
X
Hasuo (Tokyo)
(current st.) ⊨ P witnesses (next st.) ⊨ P By Knaster-Tarski Inductive constr. State space bound vs. “behavioral bound”
P(X) X c
νu. u = gfp
ϕ 2PX c−1 2X
X
current work current work
Hasuo (Tokyo)
Coalgebra (transition system) Fibration (underlying logic) Predicate lifting (modality) Locally presentable category (“size”)
Y ∃
X
i
. . . . . .
i m
i
X
i
P ϕ
p
F
P ↓p C
F X X c
Hasuo (Tokyo)
Coalgebra (transition system) Fibration (underlying logic) Predicate lifting (modality) Locally presentable category (“size”)
final sequence [Worrell, Adamek]
Y ∃
X
i
. . . . . .
i m
i
X
i
P ϕ
p
F
P ↓p C
F X X c
Hasuo (Tokyo)
Coalgebra (transition system) Fibration (underlying logic) Predicate lifting (modality) Locally presentable category (“size”)
final sequence [Worrell, Adamek]
final coalgebra [Hermida, Jacobs]
Y ∃
X
i
. . . . . .
i m
i
X
i
P ϕ
p
F
P ↓p C
F X X c
Hasuo (Tokyo)
Coalgebra (transition system) Fibration (underlying logic) Predicate lifting (modality) Locally presentable category (“size”)
final sequence [Worrell, Adamek]
final coalgebra [Hermida, Jacobs]
Y ∃
X
i
. . . . . .
i m
i
X
i
P ϕ
p
F
P ↓p C
F X X c
Categorical infrastructure: fibration and locally presentable cat.
Hasuo (Tokyo)
Coalgebra (transition system) Fibration (underlying logic) Predicate lifting (modality) Locally presentable category (“size”)
final sequence [Worrell, Adamek]
final coalgebra [Hermida, Jacobs]
Y ∃
X
i
. . . . . .
i m
i
X
i
P ϕ
p
F
P ↓p C
F X X c
Categorical infrastructure: fibration and locally presentable cat.
Some math work
Hasuo (Tokyo)
Kripke model
Pω(X) X c O
coinductive specification
ϕ3 : 2X − → 2PωX
U
{X X | X U = }
2X ϕ3 /2PX c−1 /2X
invariant
(c−1 ϕ3)U U ✓
Hasuo (Tokyo)
Kripke model
Pω(X) X c O
coinductive specification
ϕ3 : 2X − → 2PωX
U
{X X | X U = }
F X X c O
monotone
2X ϕ3 /2PX c−1 /2X
invariant
(c−1 ϕ3)U U ✓
Hasuo (Tokyo)
Kripke model
Pω(X) X c O
coinductive specification
ϕ3 : 2X − → 2PωX
U
{X X | X U = }
branching
coalgebra
F X X c O
monotone
2X ϕ3 /2PX c−1 /2X
invariant
(c−1 ϕ3)U U ✓
Hasuo (Tokyo)
Kripke model
Pω(X) X c O
coinductive specification
ϕ3 : 2X − → 2PωX
U
{X X | X U = }
branching
coalgebra
F X X c O
monotone
2X ϕ3 /2PX c−1 /2X
finitary
invariant
(c−1 ϕ3)U U ✓
Hasuo (Tokyo)
Kripke model
Pω(X) X c O
coinductive specification
ϕ3 : 2X − → 2PωX
U
{X X | X U = }
branching
coalgebra
F X X c O
monotone
2X ϕ3 /2PX c−1 /2X
finitary coinductive specification
invariant
(c−1 ϕ3)U U ✓
Hasuo (Tokyo)
Kripke model
Pω(X) X c O
coinductive specification
ϕ3 : 2X − → 2PωX
U
{X X | X U = }
branching
coalgebra
F X X c O
monotone
2X ϕ3 /2PX c−1 /2X
finitary coinductive specification
predicate lifting
ϕ : PX − → PF X
invariant
(c−1 ϕ3)U U ✓
Hasuo (Tokyo)
Kripke model
Pω(X) X c O
coinductive specification
ϕ3 : 2X − → 2PωX
U
{X X | X U = }
branching
coalgebra
F X X c O
monotone
2X ϕ3 /2PX c−1 /2X
finitary coinductive specification
predicate lifting
ϕ : PX − → PF X
endofunctor
PX ϕX /PF X c∗ /PX
invariant
(c−1 ϕ3)U U ✓
Hasuo (Tokyo)
Kripke model
Pω(X) X c O
coinductive specification
ϕ3 : 2X − → 2PωX
U
{X X | X U = }
branching
coalgebra
F X X c O
monotone
2X ϕ3 /2PX c−1 /2X
finitary coinductive specification
predicate lifting
ϕ : PX − → PF X
endofunctor
PX ϕX /PF X c∗ /PX
invariant
(c−1 ϕ3)U U ✓
coalgebra (in a fibr.) (c∗ ϕ)P P O
Hasuo (Tokyo)
coinductive specification
ϕ3 : 2X − → 2PωX
U
{X X | X U = }
monotone
2X ϕ3 /2PX c−1 /2X
coinductive specification
predicate lifting
ϕ : PX − → PF X
endofunctor
PX ϕX /PF X c∗ /PX
invariant
(c−1 ϕ3)U U ✓
coalgebra (in a fibr.) (c∗ ϕ)P P O
(c−1 ϕ3)Jνu. ϕ3uKc Jνu. ϕ3uKc
inductive constr.
X ◆ (c−1 ϕ3)X ◆ · · ·
Hasuo (Tokyo)
coinductive specification
ϕ3 : 2X − → 2PωX
U
{X X | X U = }
monotone
2X ϕ3 /2PX c−1 /2X
coinductive specification
predicate lifting
ϕ : PX − → PF X
endofunctor
PX ϕX /PF X c∗ /PX
invariant
(c−1 ϕ3)U U ✓
coalgebra (in a fibr.) (c∗ ϕ)P P O final coalg. (in a fibr.)
(c∗ ϕ)JνϕKc JνϕKc ⇠ = O
(c−1 ϕ3)Jνu. ϕ3uKc Jνu. ϕ3uKc
inductive constr.
X ◆ (c−1 ϕ3)X ◆ · · ·
Hasuo (Tokyo)
coinductive specification
ϕ3 : 2X − → 2PωX
U
{X X | X U = }
monotone
2X ϕ3 /2PX c−1 /2X
coinductive specification
predicate lifting
ϕ : PX − → PF X
endofunctor
PX ϕX /PF X c∗ /PX
invariant
(c−1 ϕ3)U U ✓
coalgebra (in a fibr.) (c∗ ϕ)P P O final coalg. (in a fibr.)
(c∗ ϕ)JνϕKc JνϕKc ⇠ = O
(c−1 ϕ3)Jνu. ϕ3uKc Jνu. ϕ3uKc
inductive constr.
X ◆ (c−1 ϕ3)X ◆ · · ·
final sequence in a fibr.
>X (c∗ ϕX)>X · · ·
Hasuo (Tokyo)
Hasuo (Tokyo)
Final coalgebra in C: (strongly) LFP (Posets, Graphs, Vec, ...) [Adamek ’03] Coinductive pred. for different
[Cirstea, Kupke & Pattinson, CSL ’09] [Cirstea & Sadrzadeh, CMCS’08] [Venema, I&C’06]
F : Sets → Sets
Hasuo (Tokyo)
Final coalgebra in C: (strongly) LFP (Posets, Graphs, Vec, ...) [Adamek ’03] Coinductive pred. for different
[Cirstea, Kupke & Pattinson, CSL ’09] [Cirstea & Sadrzadeh, CMCS’08] [Venema, I&C’06]
Various “underlying logics” as
F : Sets → Sets
P ↓p C
Constructive logics
Sub(C) ↓ C
(C: a topos)
For name-passing
Sub(SetsF) ↓ SetsF
Relations (“binary pred. ”)
Rel ↓ Sets
Hasuo (Tokyo)
Final coalgebra in C: (strongly) LFP (Posets, Graphs, Vec, ...) [Adamek ’03] Coinductive pred. for different
[Cirstea, Kupke & Pattinson, CSL ’09] [Cirstea & Sadrzadeh, CMCS’08] [Venema, I&C’06]
Various “underlying logics” as
F : Sets → Sets
P ↓p C
Constructive logics
Sub(C) ↓ C
(C: a topos)
For name-passing
Sub(SetsF) ↓ SetsF
Relations (“binary pred. ”)
Rel ↓ Sets
e.g. bisimilarity
Hasuo (Tokyo)
conventional relational fibrational invariant bisimulation coalgebra
bisimilarity final coalg. inductive constr. partition refinement final sequence
Pred ↓ Sets Rel ↓ Sets P ↓p C
Final Sequence, Fibration, Predicate Lifting, Locally Finitely Presentable Category, ...
Hasuo (Tokyo)
[Worrell, TCS’05] in Sets [Adamek, TCS’03] in strongly LFP C
1 F 1
!
Hasuo (Tokyo)
[Worrell, TCS’05] in Sets [Adamek, TCS’03] in strongly LFP C
1 F 1
!
Hasuo (Tokyo)
[Worrell, TCS’05] in Sets [Adamek, TCS’03] in strongly LFP C
F ω1 s t
πi
{ 1 F 1
!
{ i-step behaviors}
Hasuo (Tokyo)
[Worrell, TCS’05] in Sets [Adamek, TCS’03] in strongly LFP C
F ω1 s s
πi
y 1 F 1
!
k j
F πi−1
d
b
_
lim { i-step behaviors}
Hasuo (Tokyo)
: a final coalgebra? Yes, when F is limit preserving (b is iso)
[Worrell, TCS’05] in Sets [Adamek, TCS’03] in strongly LFP C
F ω1 s s
πi
y 1 F 1
!
k j
F πi−1
d
b
_
lim { i-step behaviors}
F ω1
Hasuo (Tokyo)
: a final coalgebra? Yes, when F is limit preserving (b is iso) Almost, when F is finitary (b is monic) Quotient modulo beh. eq. Continue till ω+ω [Worrell]
[Worrell, TCS’05] in Sets [Adamek, TCS’03] in strongly LFP C
F ω1 s s
πi
y 1 F 1
!
k j
F πi−1
d
b
_
lim { i-step behaviors}
F ω1
Hasuo (Tokyo)
“Organize indexed entities,” categorically In particular: categorical model of predicate logics
X f / Y in C
Hasuo (Tokyo)
“Organize indexed entities,” categorically In particular: categorical model of predicate logics
X f / Y in C
indices
Hasuo (Tokyo)
“Organize indexed entities,” categorically In particular: categorical model of predicate logics
X f / Y in C PX
P P’ P’’
indices
Hasuo (Tokyo)
“Organize indexed entities,” categorically In particular: categorical model of predicate logics
X f / Y in C PX
P P’ P’’
PY
Q Q’
indices
Hasuo (Tokyo)
“Organize indexed entities,” categorically In particular: categorical model of predicate logics
X f / Y in C PX
P P’ P’’
PY
Q Q’
indices indexed entities
Hasuo (Tokyo)
“Organize indexed entities,” categorically In particular: categorical model of predicate logics
X f / Y in C PX
P P’ P’’
PY
Q Q’
f ∗
indexed entities
Hasuo (Tokyo)
“Organize indexed entities,” categorically In particular: categorical model of predicate logics
X f / Y in C PX
P P’ P’’
PY
Q Q’
f ∗
indexed entities “substitution”
Hasuo (Tokyo)
“Organize indexed entities,” categorically In particular: categorical model of predicate logics
X f / Y in C PX
P P’ P’’
PY
Q Q’
f ∗
indexed entities “substitution”
Hasuo (Tokyo)
“Organize indexed entities,” categorically In particular: categorical model of predicate logics
X f / Y in C PX
P P’ P’’
PY
Q Q’
f ∗
Substitution
(PX, ⊆)
PX PY f −1
f / Y
f −1(V ⊆ Y ) = V
)
indexed entities “substitution”
Hasuo (Tokyo)
X f / Y in C PX
P P’ P’’
PY
Q Q’
f ∗
Hasuo (Tokyo)
X f / Y in C PX
P P’ P’’
PY
Q Q’
f ∗
P’’
P
P’ Q’
Q
Patch up
Hasuo (Tokyo)
X f / Y in C PX
P P’ P’’
PY
Q Q’
f ∗
P’’
P
P’ Q’
Q
X∈C |PX|
P − → Q in P
f
→ Y in C, P → f ∗Q in PX
Patch up
Hasuo (Tokyo)
X f / Y in C PX
P P’ P’’
PY
Q Q’
f ∗
P’’
P
P’ Q’
Q
X∈C |PX|
P − → Q in P
f
→ Y in C, P → f ∗Q in PX
Patch up
Hasuo (Tokyo)
X f / Y in C PX
P P’ P’’
PY
Q Q’
f ∗
P’’
P
P’ Q’
Q
f ∗Q
X∈C |PX|
P − → Q in P
f
→ Y in C, P → f ∗Q in PX
Patch up
Hasuo (Tokyo)
Defn. A (poset) fibration is a functor
P #p C
such that
fQ : f ⇤Q ! Q such that
P p
✏
Q = ) f ⇤Q f(Q)/ Q P g
7
C X f
/ Y
X f
/ Y
)⇤ and ( ) are functorial: id⇤
Y Q = Q ,
(g f)⇤(Q) = f ⇤(g⇤Q) , idY (Q) = idQ , g f(Q) = gQ f(g⇤Q) .
Hasuo (Tokyo)
Defn. A (poset) fibration is a functor
P #p C
such that
fQ : f ⇤Q ! Q such that
P p
✏
Q = ) f ⇤Q f(Q)/ Q P g
7
C X f
/ Y
X f
/ Y
)⇤ and ( ) are functorial: id⇤
Y Q = Q ,
(g f)⇤(Q) = f ⇤(g⇤Q) , idY (Q) = idQ , g f(Q) = gQ f(g⇤Q) . Q X f / Y f ∗Q / Q X f / Y
= ⇒
Hasuo (Tokyo)
Defn. A (poset) fibration is a functor
P #p C
such that
fQ : f ⇤Q ! Q such that
P p
✏
Q = ) f ⇤Q f(Q)/ Q P g
7
C X f
/ Y
X f
/ Y
)⇤ and ( ) are functorial: id⇤
Y Q = Q ,
(g f)⇤(Q) = f ⇤(g⇤Q) , idY (Q) = idQ , g f(Q) = gQ f(g⇤Q) . Q X f / Y f ∗Q / Q X f / Y
= ⇒
what’ s substitution?
Hasuo (Tokyo)
(f −1Q ⊆ X) / (Q ⊆ Y ) X f / Y
Pred ↓ Sets
Hasuo (Tokyo)
(f −1Q ⊆ X) / (Q ⊆ Y ) X f / Y
Pred ↓ Sets Rel ↓ Sets
✓ (f × f)−1Q ⊆ X × X ◆ / (Q ⊆ Y × Y ) X f / Y
Hasuo (Tokyo)
(f −1Q ⊆ X) / (Q ⊆ Y ) X f / Y
Pred ↓ Sets Rel ↓ Sets
✓ (f × f)−1Q ⊆ X × X ◆ / (Q ⊆ Y × Y ) X f / Y
/ X f / Y
f ∗P / ✏ ✏ _ P ✏ ✏ X f / Y
P ✏ ✏ Y
Sub(C) ↓ C
(C: a topos)
Hasuo (Tokyo)
(f −1Q ⊆ X) / (Q ⊆ Y ) X f / Y
Pred ↓ Sets Rel ↓ Sets
✓ (f × f)−1Q ⊆ X × X ◆ / (Q ⊆ Y × Y ) X f / Y
Sub(SetsF) ↓ SetsF
/ X f / Y
f ∗P / ✏ ✏ _ P ✏ ✏ X f / Y
P ✏ ✏ Y
Sub(C) ↓ C
(C: a topos)
Hasuo (Tokyo)
Defn. A predicate lifting of F : C → C is ϕ : P → P s.t.
ϕ / p ✏ P p ✏ C F / C (hence ϕX : PX → PF X)
For , coincides with , monotone, natural in X
Pred ↓ Sets
λX : 2X = ⇒ 2F X
Hasuo (Tokyo)
P p ✏ C 1 F 1 !
F i−1 !
F i !
Hasuo (Tokyo)
P p ✏ F ω1 s s πi x C 1 F 1 !
F i−1 !
F i !
Hasuo (Tokyo)
lim
P p ✏ F ω1 s s πi x C 1 F 1 !
F i−1 !
F i !
Hasuo (Tokyo)
lim
P p ✏ F ω1 s s πi x C 1 F 1 !
F i−1 !
F i !
k k F πi−1 f b ` ⌃
Hasuo (Tokyo)
lim
P p ✏ >1 ϕ>1
s s πi x C 1 F 1 !
F i−1 !
F i !
k k F πi−1 f b ` ⌃
Hasuo (Tokyo)
lim
final in P1
⟹ final in P
P p ✏ >1 ϕ>1
s s πi x C 1 F 1 !
F i−1 !
F i !
k k F πi−1 f b ` ⌃
Hasuo (Tokyo)
lim
final in P1
⟹ final in P
final seq. for φ
P p ✏ >1 ϕ>1
s s πi x C 1 F 1 !
F i−1 !
F i !
k k F πi−1 f b ` ⌃
Hasuo (Tokyo)
lim
final in P1
⟹ final in P
final seq. for φ
ϕω>1 s s x P p ✏ >1 ϕ>1
s s πi x C 1 F 1 !
F i−1 !
F i !
k k F πi−1 f b ` ⌃
Hasuo (Tokyo)
lim
final in P1
⟹ final in P
final seq. for φ
lim
ϕω>1 s s x P p ✏ >1 ϕ>1
s s πi x C 1 F 1 !
F i−1 !
F i !
k k F πi−1 f b ` ⌃
Hasuo (Tokyo)
ϕω>1 s s x P p ✏ >1 ϕ>1
k k f b0 ^
F ω1 s s πi x C 1 F 1 !
F i1 !
F i !
k k F πi1 f b ` ⌃
lim
final in P1
⟹ final in P
final seq. for φ
lim
Hasuo (Tokyo)
ϕω>1 s s x P p ✏ >1 ϕ>1
k k f b0 ^
F ω1 s s πi x C 1 F 1 !
F i1 !
F i !
k k F πi1 f b ` ⌃
lim
final in P1
⟹ final in P
final seq. for φ
lim
Assume F: finitary, φ: pred. lifting of F
Hasuo (Tokyo)
ϕω>1 s s x P p ✏ >1 ϕ>1
k k f b0 ^
F ω1 s s πi x C 1 F 1 !
F i1 !
F i !
k k F πi1 f b ` ⌃
lim
final in P1
⟹ final in P
final seq. for φ
lim
Assume F: finitary, φ: pred. lifting of F : “almost final coalgebra”, prototype of F-behaviors
F ω1
Hasuo (Tokyo)
ϕω>1 s s x P p ✏ >1 ϕ>1
k k f b0 ^
F ω1 s s πi x C 1 F 1 !
F i1 !
F i !
k k F πi1 f b ` ⌃
lim
final in P1
⟹ final in P
final seq. for φ
lim
Assume F: finitary, φ: pred. lifting of F : “almost final coalgebra”, prototype of F-behaviors : prototype of coind. pred. for each coalgebra
F ω1 ϕω>1
F X X c O F X X c O
Hasuo (Tokyo)
ϕω>1 s s x P p ✏ >1 ϕ>1
k k f b0 ^
F ω1 s s πi x C 1 F 1 !
F i1 !
F i !
k k F πi1 f b ` ⌃
lim
final in P1
⟹ final in P
final seq. for φ
lim
Key Lemma. Let
P ↓p C
be a well-founded fibration; F : C ! C be finitary; and ϕ be a predicate lifting of F . Then ϕω+1>1 = b∗(ϕω>1) .
Hasuo (Tokyo)
ϕω>1 s s x P p ✏ >1 ϕ>1
k k f b0 ^
F ω1 s s πi x C 1 F 1 !
F i1 !
F i !
k k F πi1 f b ` ⌃
lim
final in P1
⟹ final in P
final seq. for φ
lim
Key Lemma. Let
P ↓p C
be a well-founded fibration; F : C ! C be finitary; and ϕ be a predicate lifting of F . Then ϕω+1>1 = b∗(ϕω>1) .
p is compatible w/ C: LFP p itself is “well-fdd”
Hasuo (Tokyo)
Definition. A finitely determined fibration
P ↓p C
is such that:
2.
P ↓p C
has fiberwise (co)limits
let {XI
κI
− → X}I be the canoni- cal diagram from F to X. Then P ≤ Q ⇐ ⇒ κ∗
IP ≤ κ∗ IQ, ∀I.
Hasuo (Tokyo)
Definition. A finitely determined fibration
P ↓p C
is such that:
2.
P ↓p C
has fiberwise (co)limits
let {XI
κI
− → X}I be the canoni- cal diagram from F to X. Then P ≤ Q ⇐ ⇒ κ∗
IP ≤ κ∗ IQ, ∀I.
p is compatible w/ C: LFP
Hasuo (Tokyo)
Definition. A finitely determined fibration
P ↓p C
is such that:
2.
P ↓p C
has fiberwise (co)limits
let {XI
κI
− → X}I be the canoni- cal diagram from F to X. Then P ≤ Q ⇐ ⇒ κ∗
IP ≤ κ∗ IQ, ∀I.
P p ✏ κ∗
IP
/ P C XI κI / X
p is compatible w/ C: LFP
Hasuo (Tokyo)
Definition. A finitely determined fibration
P ↓p C
is such that:
2.
P ↓p C
has fiberwise (co)limits
let {XI
κI
− → X}I be the canoni- cal diagram from F to X. Then P ≤ Q ⇐ ⇒ κ∗
IP ≤ κ∗ IQ, ∀I.
P p ✏ κ∗
IP
/ P C XI κI / X
∈ F
. . . . . .
p is compatible w/ C: LFP
Hasuo (Tokyo)
Definition. A finitely determined fibration
P ↓p C
is such that:
2.
P ↓p C
has fiberwise (co)limits
let {XI
κI
− → X}I be the canoni- cal diagram from F to X. Then P ≤ Q ⇐ ⇒ κ∗
IP ≤ κ∗ IQ, ∀I.
P p ✏ κ∗
IP
/ P C XI κI / X
∈ F
colim
. . . . . .
p is compatible w/ C: LFP
Hasuo (Tokyo)
Definition. A finitely determined fibration
P ↓p C
is such that:
2.
P ↓p C
has fiberwise (co)limits
let {XI
κI
− → X}I be the canoni- cal diagram from F to X. Then P ≤ Q ⇐ ⇒ κ∗
IP ≤ κ∗ IQ, ∀I.
P p ✏ κ∗
IP
/ P C XI κI / X
∈ F
colim
. . . . . .
p is compatible w/ C: LFP
Hasuo (Tokyo)
Definition. A finitely determined fibration
P ↓p C
is such that:
2.
P ↓p C
has fiberwise (co)limits
let {XI
κI
− → X}I be the canoni- cal diagram from F to X. Then P ≤ Q ⇐ ⇒ κ∗
IP ≤ κ∗ IQ, ∀I.
Definition. A well-founded fibration is a poset fibration that
in a fiber PX for FP X.
Hasuo (Tokyo)
Definition. A finitely determined fibration
P ↓p C
is such that:
2.
P ↓p C
has fiberwise (co)limits
let {XI
κI
− → X}I be the canoni- cal diagram from F to X. Then P ≤ Q ⇐ ⇒ κ∗
IP ≤ κ∗ IQ, ∀I.
Theorem. Assume
X c , a coalgebra
↓p C
is a well-founded fibration
ϕ
P p
F C , predicate lifting Then the sequence X (c∗ ϕX)X (c−1 ϕ)2X · · · stablizes after ω steps, yielding νϕ as its limit.
F X X c O
Definition. A well-founded fibration is a poset fibration that
in a fiber PX for FP X.
Hasuo (Tokyo)
Definition. A finitely determined fibration
P ↓p C
is such that:
2.
P ↓p C
has fiberwise (co)limits
let {XI
κI
− → X}I be the canoni- cal diagram from F to X. Then P ≤ Q ⇐ ⇒ κ∗
IP ≤ κ∗ IQ, ∀I.
Theorem. Assume
X c , a coalgebra
↓p C
is a well-founded fibration
ϕ
P p
F C , predicate lifting Then the sequence X (c∗ ϕX)X (c−1 ϕ)2X · · · stablizes after ω steps, yielding νϕ as its limit.
F X X c O
ϕω>1 s s x P p ✏ >1 ϕ>1
k k f b0 ^
F ω1 s s πi x C 1 F 1 !
F i1 !
F i !
k k F πi1 f b ` ⌃
Definition. A well-founded fibration is a poset fibration that
in a fiber PX for FP X.
Hasuo (Tokyo)
Prop. Assume C is LFP and LCCC. Then
↓ C
is finitely determined.
Prop. Assume Ω is an algebraic lattice. Consider
Fam(Ω) ↓ Sets
; then
↓ Sets
is finitely determined.
Hasuo (Tokyo)
Prop. Assume C is LFP and LCCC. Then
↓ C
is finitely determined.
Prop. Assume Ω is an algebraic lattice. Consider
Fam(Ω) ↓ Sets
; then
↓ Sets
is finitely determined.
topos ⟹ LCCC
Hasuo (Tokyo)
Prop. Assume C is LFP and LCCC. Then
↓ C
is finitely determined.
Prop. Assume Ω is an algebraic lattice. Consider
Fam(Ω) ↓ Sets
; then
↓ Sets
is finitely determined.
topos ⟹ LCCC Algebraic lattice:
every elem. is a sup
s “LFP poset”
Hasuo (Tokyo)
Definition. A well-founded fibration is a poset fibration that
in a fiber PX for FP X.
Hasuo (Tokyo)
fin.-det., well-founded fin.-det., well-founded fin.-det., not well-fdd
Pred ↓ Sets , Rel ↓ Sets
Definition. A well-founded fibration is a poset fibration that
in a fiber PX for FP X.
Sub(SetsF) ↓ SetsF
,
Sub(SetsF+) ↓ SetsF+ Sub(SetsI) ↓ SetsI
Hasuo (Tokyo)
fin.-det., well-founded fin.-det., well-founded fin.-det., not well-fdd
Pred ↓ Sets , Rel ↓ Sets
Definition. A well-founded fibration is a poset fibration that
in a fiber PX for FP X.
Sub(SetsF) ↓ SetsF
,
Sub(SetsF+) ↓ SetsF+ Sub(SetsI) ↓ SetsI
Hasuo (Tokyo)
In C ? In a fibration !! This work: final coalgebra in p; final sequcence in p
F X / _ _ _ _ _ F Z X c O beh(c) / _ _ _ _ _ _ Z final ∼ = O
{ F-behaviors } + coinductive predicate
Hasuo (Tokyo)
relations, constructive, name-passing, ...
X
ϕω>1 s s x P p ✏ >1 ϕ>1
k k f b0 ^
F ω1 s s πi x C 1 F 1 !
F i1 !
F i !
k k F πi1 f b ` ⌃
Hasuo (Tokyo)
X
c
− 1
X
c
− 1
2
X
· ·
ϕω>1 s s x P p ✏ >1 ϕ>1
k k f b0 ^
F ω1 s s πi x C 1 F 1 !
F i1 !
F i !
k k F πi1 f b ` ⌃
conventional relational fibrational invariant bisimulation coalgebra
bisimilarity final coalg. inductive constr. partition refinement final sequence
Pred ↓ Sets Rel ↓ Sets P ↓p C
Hasuo (Tokyo)
General proof principles for coinduction Parametrized coind. [Hur, Neis, Dreyer & Vafeiadis, POPL
’13]
Bisimulation up-to [Bonchi & Pous, POPL
’13]
Bisimilarity check, etc. Infinite states Current result: semidecidability To the full fixedpoint logics
Model checking algorithms Combine with bialgebraic SOS Games ↔ automata ↔ fixedpoint logic
Proof assistants Much like appl. of final sequences
Hasuo (Tokyo)
General proof principles for coinduction Parametrized coind. [Hur, Neis, Dreyer & Vafeiadis, POPL
’13]
Bisimulation up-to [Bonchi & Pous, POPL
’13]
Bisimilarity check, etc. Infinite states Current result: semidecidability To the full fixedpoint logics
Model checking algorithms Combine with bialgebraic SOS Games ↔ automata ↔ fixedpoint logic
Proof assistants Much like appl. of final sequences
Thank you for your attention!
Ichiro Hasuo (Dept. CS, U Tokyo)
h t t p : / / w w w
m m . i s . s . u
y
a c . j p / ~ i c h i r