07: Control Loops & Invariants
Logical Foundations of Cyber-Physical Systems
Logical Foundations of Cyber-Physical Systems
André Platzer
André Platzer
André Platzer (CMU) LFCPS/07: Control Loops & Invariants LFCPS/07 1 / 16
Logical Foundations of Cyber-Physical Systems Andr Platzer Andr - - PowerPoint PPT Presentation
07: Control Loops & Invariants Logical Foundations of Cyber-Physical Systems Andr Platzer Logical Foundations of Cyber-Physical Systems Andr Platzer Andr Platzer (CMU) LFCPS/07: Control Loops & Invariants LFCPS/07 1 / 16
André Platzer
André Platzer (CMU) LFCPS/07: Control Loops & Invariants LFCPS/07 1 / 16
1
2
3
4
André Platzer (CMU) LFCPS/07: Control Loops & Invariants LFCPS/07 2 / 16
1
2
3
4
André Platzer (CMU) LFCPS/07: Control Loops & Invariants LFCPS/07 2 / 16
André Platzer (CMU) LFCPS/07: Control Loops & Invariants LFCPS/07 3 / 16
1
2
3
4
André Platzer (CMU) LFCPS/07: Control Loops & Invariants LFCPS/07 3 / 16
André Platzer (CMU) LFCPS/07: Control Loops & Invariants LFCPS/07 4 / 16
André Platzer (CMU) LFCPS/07: Control Loops & Invariants LFCPS/07 4 / 16
André Platzer (CMU) LFCPS/07: Control Loops & Invariants LFCPS/07 5 / 16
André Platzer (CMU) LFCPS/07: Control Loops & Invariants LFCPS/07 5 / 16
André Platzer (CMU) LFCPS/07: Control Loops & Invariants LFCPS/07 5 / 16
André Platzer (CMU) LFCPS/07: Control Loops & Invariants LFCPS/07 5 / 16
André Platzer (CMU) LFCPS/07: Control Loops & Invariants LFCPS/07 5 / 16
André Platzer (CMU) LFCPS/07: Control Loops & Invariants LFCPS/07 5 / 16
André Platzer (CMU) LFCPS/07: Control Loops & Invariants LFCPS/07 5 / 16
André Platzer (CMU) LFCPS/07: Control Loops & Invariants LFCPS/07 5 / 16
André Platzer (CMU) LFCPS/07: Control Loops & Invariants LFCPS/07 5 / 16
André Platzer (CMU) LFCPS/07: Control Loops & Invariants LFCPS/07 6 / 16
idP ⊢ P
G P ⊢ [α∗](P → [α]P)
I
André Platzer (CMU) LFCPS/07: Control Loops & Invariants LFCPS/07 6 / 16
idP ⊢ P
G P ⊢ [α∗](P → [α]P)
I
André Platzer (CMU) LFCPS/07: Control Loops & Invariants LFCPS/07 6 / 16
André Platzer (CMU) LFCPS/07: Control Loops & Invariants LFCPS/07 7 / 16
ind J ⊢ [α∗]J
M[·][α∗]J ⊢ [α∗]P
cut
André Platzer (CMU) LFCPS/07: Control Loops & Invariants LFCPS/07 7 / 16
ind J ⊢ [α∗]J
M[·][α∗]J ⊢ [α∗]P
cut
André Platzer (CMU) LFCPS/07: Control Loops & Invariants LFCPS/07 7 / 16
loop
1
André Platzer (CMU) LFCPS/07: Control Loops & Invariants LFCPS/07 8 / 16
loop
1
André Platzer (CMU) LFCPS/07: Control Loops & Invariants LFCPS/07 8 / 16
loop
1
2
André Platzer (CMU) LFCPS/07: Control Loops & Invariants LFCPS/07 8 / 16
loop
1
2
André Platzer (CMU) LFCPS/07: Control Loops & Invariants LFCPS/07 8 / 16
loop
1
2
3
André Platzer (CMU) LFCPS/07: Control Loops & Invariants LFCPS/07 8 / 16
loop
1
2
3
André Platzer (CMU) LFCPS/07: Control Loops & Invariants LFCPS/07 8 / 16
loop
1
2
3
4
André Platzer (CMU) LFCPS/07: Control Loops & Invariants LFCPS/07 8 / 16
loop
1
2
3
4
André Platzer (CMU) LFCPS/07: Control Loops & Invariants LFCPS/07 8 / 16
André Platzer (CMU) LFCPS/07: Control Loops & Invariants LFCPS/07 9 / 16
André Platzer (CMU) LFCPS/07: Control Loops & Invariants LFCPS/07 9 / 16
André Platzer (CMU) LFCPS/07: Control Loops & Invariants LFCPS/07 9 / 16
André Platzer (CMU) LFCPS/07: Control Loops & Invariants LFCPS/07 9 / 16
1
2
3
4
André Platzer (CMU) LFCPS/07: Control Loops & Invariants LFCPS/07 9 / 16
André Platzer (CMU) LFCPS/07: Control Loops & Invariants LFCPS/07 10 / 16
loop
André Platzer (CMU) LFCPS/07: Control Loops & Invariants LFCPS/07 10 / 16
loop
André Platzer (CMU) LFCPS/07: Control Loops & Invariants LFCPS/07 10 / 16
loop
André Platzer (CMU) LFCPS/07: Control Loops & Invariants LFCPS/07 10 / 16
MR
loop
André Platzer (CMU) LFCPS/07: Control Loops & Invariants LFCPS/07 10 / 16
MR
loop
André Platzer (CMU) LFCPS/07: Control Loops & Invariants LFCPS/07 10 / 16
MR
loop
André Platzer (CMU) LFCPS/07: Control Loops & Invariants LFCPS/07 10 / 16
MR
loop
André Platzer (CMU) LFCPS/07: Control Loops & Invariants LFCPS/07 10 / 16
MR
loop
André Platzer (CMU) LFCPS/07: Control Loops & Invariants LFCPS/07 10 / 16
MR
loop
André Platzer (CMU) LFCPS/07: Control Loops & Invariants LFCPS/07 10 / 16
MR
loop
André Platzer (CMU) LFCPS/07: Control Loops & Invariants LFCPS/07 10 / 16
MR
loop
André Platzer (CMU) LFCPS/07: Control Loops & Invariants LFCPS/07 10 / 16
André Platzer (CMU) LFCPS/07: Control Loops & Invariants LFCPS/07 11 / 16
André Platzer (CMU) LFCPS/07: Control Loops & Invariants LFCPS/07 11 / 16
2
André Platzer (CMU) LFCPS/07: Control Loops & Invariants LFCPS/07 11 / 16
2
André Platzer (CMU) LFCPS/07: Control Loops & Invariants LFCPS/07 11 / 16
1
2
André Platzer (CMU) LFCPS/07: Control Loops & Invariants LFCPS/07 11 / 16
1
2
André Platzer (CMU) LFCPS/07: Control Loops & Invariants LFCPS/07 11 / 16
1
2
3
André Platzer (CMU) LFCPS/07: Control Loops & Invariants LFCPS/07 11 / 16
1
2
3
André Platzer (CMU) LFCPS/07: Control Loops & Invariants LFCPS/07 11 / 16
1
2
3
4
André Platzer (CMU) LFCPS/07: Control Loops & Invariants LFCPS/07 11 / 16
1
2
3
4
André Platzer (CMU) LFCPS/07: Control Loops & Invariants LFCPS/07 11 / 16
1
2
3
4
5
André Platzer (CMU) LFCPS/07: Control Loops & Invariants LFCPS/07 11 / 16
1
2
3
4
5
André Platzer (CMU) LFCPS/07: Control Loops & Invariants LFCPS/07 11 / 16
1
2
3
4
5
André Platzer (CMU) LFCPS/07: Control Loops & Invariants LFCPS/07 11 / 16
1
2
3
4
5
André Platzer (CMU) LFCPS/07: Control Loops & Invariants LFCPS/07 11 / 16
1
2
3
4
5
André Platzer (CMU) LFCPS/07: Control Loops & Invariants LFCPS/07 11 / 16
1
2
3
4
5
André Platzer (CMU) LFCPS/07: Control Loops & Invariants LFCPS/07 11 / 16
1
2
3
4
5
André Platzer (CMU) LFCPS/07: Control Loops & Invariants LFCPS/07 11 / 16
1
2
3
4
5
André Platzer (CMU) LFCPS/07: Control Loops & Invariants LFCPS/07 11 / 16
1
2
3
4
5
André Platzer (CMU) LFCPS/07: Control Loops & Invariants LFCPS/07 11 / 16
1
2
3
4
5
André Platzer (CMU) LFCPS/07: Control Loops & Invariants LFCPS/07 11 / 16
1
2
3
4
5
André Platzer (CMU) LFCPS/07: Control Loops & Invariants LFCPS/07 11 / 16
1
2
3
4
5
André Platzer (CMU) LFCPS/07: Control Loops & Invariants LFCPS/07 11 / 16
1
2
3
4
5
André Platzer (CMU) LFCPS/07: Control Loops & Invariants LFCPS/07 11 / 16
André Platzer (CMU) LFCPS/07: Control Loops & Invariants LFCPS/07 12 / 16
2t2;v:=−gt](x≥0 → j(x,v))
André Platzer (CMU) LFCPS/07: Control Loops & Invariants LFCPS/07 12 / 16
2t2][v:=−gt](x≥0 → j(x,v))
2t2;v:=−gt](x≥0 → j(x,v))
André Platzer (CMU) LFCPS/07: Control Loops & Invariants LFCPS/07 12 / 16
2t2](x≥0 → j(x,−gt))
2t2][v:=−gt](x≥0 → j(x,v))
2t2;v:=−gt](x≥0 → j(x,v))
André Platzer (CMU) LFCPS/07: Control Loops & Invariants LFCPS/07 12 / 16
2t2≥0 → j(H− g
2 t2,−gt))
2t2](x≥0 → j(x,−gt))
2t2][v:=−gt](x≥0 → j(x,v))
2t2;v:=−gt](x≥0 → j(x,v))
André Platzer (CMU) LFCPS/07: Control Loops & Invariants LFCPS/07 12 / 16
2t2≥0 → j(H− g
2 t2,−gt)
2t2≥0 → j(H− g
2 t2,−gt))
2t2](x≥0 → j(x,−gt))
2t2][v:=−gt](x≥0 → j(x,v))
2t2;v:=−gt](x≥0 → j(x,v))
André Platzer (CMU) LFCPS/07: Control Loops & Invariants LFCPS/07 12 / 16
2t2≥0 ⊢ j(H− g
2 t2,−gt)
2t2≥0 → j(H− g
2 t2,−gt)
2t2≥0 → j(H− g
2 t2,−gt))
2t2](x≥0 → j(x,−gt))
2t2][v:=−gt](x≥0 → j(x,v))
2t2;v:=−gt](x≥0 → j(x,v))
André Platzer (CMU) LFCPS/07: Control Loops & Invariants LFCPS/07 12 / 16
2t2≥0 ⊢ 2g(H− g 2t2)=2gH−(gt)2∧(H− g 2t2)≥0
2t2≥0 ⊢ j(H− g
2 t2,−gt)
2t2≥0 → j(H− g
2 t2,−gt)
2t2≥0 → j(H− g
2 t2,−gt))
2t2](x≥0 → j(x,−gt))
2t2][v:=−gt](x≥0 → j(x,v))
2t2;v:=−gt](x≥0 → j(x,v))
André Platzer (CMU) LFCPS/07: Control Loops & Invariants LFCPS/07 12 / 16
2t2)=2gH−(gt)2
2t2≥0 ⊢ H− g 2t2≥0
2t2≥0 ⊢ 2g(H− g 2t2)=2gH−(gt)2∧(H− g 2t2)≥0
2t2≥0 ⊢ j(H− g
2 t2,−gt)
2t2≥0 → j(H− g
2 t2,−gt)
2t2≥0 → j(H− g
2 t2,−gt))
2t2](x≥0 → j(x,−gt))
2t2][v:=−gt](x≥0 → j(x,v))
2t2;v:=−gt](x≥0 → j(x,v))
André Platzer (CMU) LFCPS/07: Control Loops & Invariants LFCPS/07 12 / 16
2t2)=2gH−(gt)2
2t2≥0 ⊢ H− g 2t2≥0
2t2≥0 ⊢ 2g(H− g 2t2)=2gH−(gt)2∧(H− g 2t2)≥0
2t2≥0 ⊢ j(H− g
2 t2,−gt)
2t2≥0 → j(H− g
2 t2,−gt)
2t2≥0 → j(H− g
2 t2,−gt))
2t2](x≥0 → j(x,−gt))
2t2][v:=−gt](x≥0 → j(x,v))
2t2;v:=−gt](x≥0 → j(x,v))
André Platzer (CMU) LFCPS/07: Control Loops & Invariants LFCPS/07 12 / 16
2t2)=2gH−(gt)2 id
2t2≥0 ⊢ H− g 2t2≥0
2t2≥0 ⊢ 2g(H− g 2t2)=2gH−(gt)2∧(H− g 2t2)≥0
2t2≥0 ⊢ j(H− g
2 t2,−gt)
2t2≥0 → j(H− g
2 t2,−gt)
2t2≥0 → j(H− g
2 t2,−gt))
2t2](x≥0 → j(x,−gt))
2t2][v:=−gt](x≥0 → j(x,v))
2t2;v:=−gt](x≥0 → j(x,v))
André Platzer (CMU) LFCPS/07: Control Loops & Invariants LFCPS/07 12 / 16
2t2)=2gH−(gt)2 id
2t2≥0 ⊢ H− g 2t2≥0
2t2≥0 ⊢ 2g(H− g 2t2)=2gH−(gt)2∧(H− g 2t2)≥0
2t2≥0 ⊢ j(H− g
2 t2,−gt)
2t2≥0 → j(H− g
2 t2,−gt)
2t2≥0 → j(H− g
2 t2,−gt))
2t2](x≥0 → j(x,−gt))
2t2][v:=−gt](x≥0 → j(x,v))
2t2;v:=−gt](x≥0 → j(x,v))
André Platzer (CMU) LFCPS/07: Control Loops & Invariants LFCPS/07 12 / 16
2t2)=2gH−(gt)2 id
2t2≥0 ⊢ H− g 2t2≥0
2t2≥0 ⊢ 2g(H− g 2t2)=2gH−(gt)2∧(H− g 2t2)≥0
2t2≥0 ⊢ j(H− g
2 t2,−gt)
2t2≥0 → j(H− g
2 t2,−gt)
2t2≥0 → j(H− g
2 t2,−gt))
2t2](x≥0 → j(x,−gt))
2t2][v:=−gt](x≥0 → j(x,v))
2t2;v:=−gt](x≥0 → j(x,v))
André Platzer (CMU) LFCPS/07: Control Loops & Invariants LFCPS/07 12 / 16
2t2)=2gH−(gt)2 id
2t2≥0 ⊢ H− g 2t2≥0
2t2≥0 ⊢ 2g(H− g 2t2)=2gH−(gt)2∧(H− g 2t2)≥0
2t2≥0 ⊢ j(H− g
2 t2,−gt)
2t2≥0 → j(H− g
2 t2,−gt)
2t2≥0 → j(H− g
2 t2,−gt))
2t2](x≥0 → j(x,−gt))
2t2][v:=−gt](x≥0 → j(x,v))
2t2;v:=−gt](x≥0 → j(x,v))
Todo redo proof with true solution André Platzer (CMU) LFCPS/07: Control Loops & Invariants LFCPS/07 12 / 16
loop
1
2
André Platzer (CMU) LFCPS/07: Control Loops & Invariants LFCPS/07 13 / 16
loop
1
2
3
André Platzer (CMU) LFCPS/07: Control Loops & Invariants LFCPS/07 13 / 16
loop
1
2
3
André Platzer (CMU) LFCPS/07: Control Loops & Invariants LFCPS/07 13 / 16
loop
1
2
3
André Platzer (CMU) LFCPS/07: Control Loops & Invariants LFCPS/07 13 / 16
Vj(x,v)∧p ⊢ [α]p
loop
1
2
3
André Platzer (CMU) LFCPS/07: Control Loops & Invariants LFCPS/07 13 / 16
Vj(x,v)∧p ⊢ [α]p
loop
1
2
3
André Platzer (CMU) LFCPS/07: Control Loops & Invariants LFCPS/07 13 / 16
André Platzer (CMU) LFCPS/07: Control Loops & Invariants LFCPS/07 14 / 16
1
2
3
4
André Platzer (CMU) LFCPS/07: Control Loops & Invariants LFCPS/07 14 / 16
André Platzer (CMU) LFCPS/07: Control Loops & Invariants LFCPS/07 15 / 16
André Platzer (CMU) LFCPS/07: Control Loops & Invariants LFCPS/07 16 / 16
5
André Platzer (CMU) LFCPS/07: Control Loops & Invariants LFCPS/07 16 / 16
André Platzer (CMU) LFCPS/07: Control Loops & Invariants LFCPS/07 17 / 16
André Platzer (CMU) LFCPS/07: Control Loops & Invariants LFCPS/07 18 / 16
André Platzer (CMU) LFCPS/07: Control Loops & Invariants LFCPS/07 18 / 16
André Platzer (CMU) LFCPS/07: Control Loops & Invariants LFCPS/07 18 / 16
André Platzer (CMU) LFCPS/07: Control Loops & Invariants LFCPS/07 18 / 16
André Platzer (CMU) LFCPS/07: Control Loops & Invariants LFCPS/07 18 / 16
André Platzer (CMU) LFCPS/07: Control Loops & Invariants LFCPS/07 18 / 16
André Platzer (CMU) LFCPS/07: Control Loops & Invariants LFCPS/07 18 / 16
André Platzer (CMU) LFCPS/07: Control Loops & Invariants LFCPS/07 18 / 16
1
2
André Platzer (CMU) LFCPS/07: Control Loops & Invariants LFCPS/07 18 / 16
André Platzer (CMU) LFCPS/07: Control Loops & Invariants LFCPS/07 19 / 16
André Platzer (CMU) LFCPS/07: Control Loops & Invariants LFCPS/07 19 / 16
André Platzer (CMU) LFCPS/07: Control Loops & Invariants LFCPS/07 19 / 16
André Platzer (CMU) LFCPS/07: Control Loops & Invariants LFCPS/07 19 / 16
André Platzer (CMU) LFCPS/07: Control Loops & Invariants LFCPS/07 19 / 16
André Platzer (CMU) LFCPS/07: Control Loops & Invariants LFCPS/07 19 / 16
André Platzer (CMU) LFCPS/07: Control Loops & Invariants LFCPS/07 19 / 16
André Platzer (CMU) LFCPS/07: Control Loops & Invariants LFCPS/07 19 / 16
André Platzer (CMU) LFCPS/07: Control Loops & Invariants LFCPS/07 19 / 16
André Platzer (CMU) LFCPS/07: Control Loops & Invariants LFCPS/07 19 / 16
André Platzer (CMU) LFCPS/07: Control Loops & Invariants LFCPS/07 19 / 16
André Platzer (CMU) LFCPS/07: Control Loops & Invariants LFCPS/07 19 / 16
André Platzer (CMU) LFCPS/07: Control Loops & Invariants LFCPS/07 19 / 16