Commit 405eec83 authored by Christian Müller's avatar Christian Müller
Browse files

fix a few things

parent 9a99c60c
Node 0:
True
Node 1:
∀ u:User,info:Info. ((Read(t1)(u,info) ↔ eq()) ∧
((¬ Read(t1)(u,info) ∧
(¬ Written(t1)(info,u) ∨
¬ choice0(t1)(u,info))) ∨
Read(t2)(u,info) ∨
(Written(t2)(info,u) ∧
((¬ informed(t1)(u) ∧
choice0(t1)(u,info)) ∨
(informed(t1)(u) ∧
choice0(t2)(u,info))))) ∧
((¬ Read(t2)(u,info) ∧
(¬ Written(t2)(info,u) ∨
((informed(t1)(u) ∨
¬ choice0(t1)(u,info)) ∧
(¬ informed(t1)(u) ∨
¬ choice0(t2)(u,info))))) ∨
Read(t1)(u,info) ∨
(Written(t1)(info,u) ∧
choice0(t1)(u,info)))) ∧
∀ u:User,info:Info,i:Info. (((¬ Read(t1)(u,info) ∧
(¬ Written(t1)(info,u) ∨
¬ choice0(t1)(u,info))) ∨
Read(t2)(u,info) ∨
(Written(t2)(info,u) ∧
((¬ informed(t1)(u) ∧
choice0(t1)(u,info)) ∨
(informed(t1)(u) ∧
choice0(t2)(u,info))))) ∧
((¬ Read(t2)(u,info) ∧
(¬ Written(t2)(info,u) ∨
((informed(t1)(u) ∨
¬ choice0(t1)(u,info)) ∧
(¬ informed(t1)(u) ∨
¬ choice0(t2)(u,info))))) ∨
Read(t1)(u,info) ∨
(Written(t1)(info,u) ∧
choice0(t1)(u,info))) ∧
(¬ Written(t2)(info,u) ∨
(((¬ Read(t1)(u,i) ∧
(¬ Written(t1)(i,u) ∨
¬ choice0(t1)(u,i))) ∨
Read(t2)(u,i) ∨
(Written(t2)(i,u) ∧
¬ informed(t1)(u) ∧
choice0(t1)(u,i))) ∧
((¬ Read(t2)(u,i) ∧
(¬ Written(t2)(i,u) ∨
¬ choice0(t1)(u,i))) ∨
Read(t1)(u,i) ∨
(Written(t1)(i,u) ∧
choice0(t1)(u,i)))) ∨
¬ choice0(t2)(u,info) ∨
Read(t1)(u,info) ∨
choice0(t1)(u,info)) ∧
(¬ Read(t1)(u,info) ∨
Read(t2)(u,info)) ∧
(¬ Read(t2)(u,info) ∨
Read(t1)(u,info)) ∧
((¬ Read(t1)(u,info) ∧
((¬ Written(t1)(info,u) ∧
¬ choice1(t1)(u,info)) ∨
¬ choice0(t1)(u,info))) ∨
Read(t2)(u,info) ∨
((Written(t2)(info,u) ∨
choice1(t2)(u,info)) ∧
((¬ informed(t1)(u) ∧
choice0(t1)(u,info)) ∨
(informed(t1)(u) ∧
choice0(t2)(u,info))))) ∧
((¬ Read(t2)(u,info) ∧
((¬ Written(t2)(info,u) ∧
¬ choice1(t2)(u,info)) ∨
((informed(t1)(u) ∨
¬ choice0(t1)(u,info)) ∧
(¬ informed(t1)(u) ∨
¬ choice0(t2)(u,info))))) ∨
Read(t1)(u,info) ∨
((Written(t1)(info,u) ∨
choice1(t1)(u,info)) ∧
choice0(t1)(u,info))) ∧
((¬ Written(t2)(info,u) ∧
¬ choice1(t2)(u,info)) ∨
(((¬ Read(t1)(u,i) ∧
((¬ Written(t1)(i,u) ∧
¬ choice1(t1)(u,i)) ∨
¬ choice0(t1)(u,i))) ∨
Read(t2)(u,i) ∨
((Written(t2)(i,u) ∨
choice1(t2)(u,i)) ∧
choice0(t1)(u,i))) ∧
((¬ Read(t2)(u,i) ∧
((¬ Written(t2)(i,u) ∧
¬ choice1(t2)(u,i)) ∨
¬ choice0(t1)(u,i))) ∨
Read(t1)(u,i) ∨
((Written(t1)(i,u) ∨
choice1(t1)(u,i)) ∧
choice0(t1)(u,i)))) ∨
¬ choice0(t2)(u,info) ∨
Read(t1)(u,info) ∨
choice0(t1)(u,info)))
Node 2:
∀ u:User,info:Info. (Read(t1)(u,info) ↔ eq())
Node 3:
∀ u:User,info:Info. ((Read(t1)(u,info) ↔ eq()) ∧
(¬ Read(t1)(u,info) ∨
Read(t2)(u,info)) ∧
(¬ Read(t2)(u,info) ∨
Read(t1)(u,info)) ∧
((¬ Read(t1)(u,info) ∧
(¬ Written(t1)(info,u) ∨
¬ choice0(t1)(u,info))) ∨
Read(t2)(u,info) ∨
(Written(t2)(info,u) ∧
((¬ informed(t1)(u) ∧
choice0(t1)(u,info)) ∨
(informed(t1)(u) ∧
choice0(t2)(u,info))))) ∧
((¬ Read(t2)(u,info) ∧
(¬ Written(t2)(info,u) ∨
((informed(t1)(u) ∨
¬ choice0(t1)(u,info)) ∧
(¬ informed(t1)(u) ∨
¬ choice0(t2)(u,info))))) ∨
Read(t1)(u,info) ∨
(Written(t1)(info,u) ∧
choice0(t1)(u,info)))) ∧
∀ u:User,info:Info,i:Info. ((¬ Read(t1)(u,info) ∨
Read(t2)(u,info)) ∧
(¬ Read(t2)(u,info) ∨
Read(t1)(u,info)) ∧
((¬ Read(t1)(u,info) ∧
(¬ Written(t1)(info,u) ∨
¬ choice0(t1)(u,info))) ∨
Read(t2)(u,info) ∨
(Written(t2)(info,u) ∧
((¬ informed(t1)(u) ∧
choice0(t1)(u,info)) ∨
(informed(t1)(u) ∧
choice0(t2)(u,info))))) ∧
((¬ Read(t2)(u,info) ∧
(¬ Written(t2)(info,u) ∨
((informed(t1)(u) ∨
¬ choice0(t1)(u,info)) ∧
(¬ informed(t1)(u) ∨
¬ choice0(t2)(u,info))))) ∨
Read(t1)(u,info) ∨
(Written(t1)(info,u) ∧
choice0(t1)(u,info))) ∧
(¬ Written(t2)(info,u) ∨
(((¬ Read(t1)(u,i) ∧
(¬ Written(t1)(i,u) ∨
¬ choice0(t1)(u,i))) ∨
Read(t2)(u,i) ∨
(Written(t2)(i,u) ∧
choice0(t1)(u,i))) ∧
((¬ Read(t2)(u,i) ∧
(¬ Written(t2)(i,u) ∨
¬ choice0(t1)(u,i))) ∨
Read(t1)(u,i) ∨
(Written(t1)(i,u) ∧
choice0(t1)(u,i)))) ∨
¬ choice0(t2)(u,info) ∨
Read(t1)(u,info) ∨
choice0(t1)(u,info)))
Name: nonomitting/notebook
Description:
Invariant: ∀ u:User,info:Info. (Read(t1)(u,info) ↔ Read(t2)(u,info))
Model: causal
Result: not inductive
WF size: 5
Time: 974 ms
Proof steps: 12
Strengthenings: 5
Largest Inv: 256
Average Inv: 104
\ No newline at end of file
digraph "Invariant Labelling" {
1 -> 3 [label = "forall x:User,i:Info may (Some(choice0))
Written(i,x) → Read += (x,i);", color = red]
2 -> 2 [label = "forall
", color = red]
0 [label = "Node 0:
True"]
3 -> 1 [label = "forall
", color = red]
3 [label = "Node 3:
∀ u:User,info:Info. (Read(t1)(u,info) ↔ eq())"]
1 [label = "Node 1:
∀ u:User,info:Info. (Read(t1)(u,info) ↔ eq())"]
1 -> 2 [label = "forall
", color = red]
1 -> 1 [label = "forall x:User,i:Info may (Some(choice1))
True → Written += (i,x);", color = red]
2 [label = "Node 2:
∀ u:User,info:Info. (Read(t1)(u,info) ↔ eq())"]
0 -> 1 [label = "forall
", color = red]
}
\ No newline at end of file
digraph "Invariant Labelling" {
1 -> 3 [label = "forall x:User,i:Info may (Some(choice0))
Written(i,x) → Read += (x,i);", color = red]
2 -> 2 [label = "forall
", color = red]
0 [label = "Node 0:
True"]
3 [label = "Node 3:
∀ u:User,info:Info. (Read(t1)(u,info) ↔ eq())"]
1 [label = "Node 1:
∀ u:User,info:Info. (Read(t1)(u,info) ↔ eq())"]
1 -> 2 [label = "forall
", color = red]
1 -> 1 [label = "forall x:User,i:Info may (Some(choice1))
True → Written += (i,x);", color = red]
2 [label = "Node 2:
∀ u:User,info:Info. (Read(t1)(u,info) ↔ eq())"]
0 -> 1 [label = "forall
", color = red]
3 -> 1 [label = "forall
", color = green]
}
\ No newline at end of file
digraph "Invariant Labelling" {
1 -> 3 [label = "forall x:User,i:Info may (Some(choice0))
Written(i,x) → Read += (x,i);", color = green]
0 [label = "Node 0:
True"]
3 [label = "Node 3:
∀ u:User,info:Info. ((Read(t1)(u,info) ↔ eq()) ∧
(¬ Read(t1)(u,info) ∨
Read(t2)(u,info)) ∧
(¬ Read(t2)(u,info) ∨
Read(t1)(u,info)) ∧
((¬ Read(t1)(u,info) ∧
(¬ Written(t1)(info,u) ∨
¬ choice0(t1)(u,info))) ∨
Read(t2)(u,info) ∨
(Written(t2)(info,u) ∧
((¬ informed(t1)(u) ∧
choice0(t1)(u,info)) ∨
(informed(t1)(u) ∧
choice0(t2)(u,info))))) ∧
((¬ Read(t2)(u,info) ∧
(¬ Written(t2)(info,u) ∨
((informed(t1)(u) ∨
¬ choice0(t1)(u,info)) ∧
(¬ informed(t1)(u) ∨
¬ choice0(t2)(u,info))))) ∨
Read(t1)(u,info) ∨
(Written(t1)(info,u) ∧
choice0(t1)(u,info)))) ∧
∀ u:User,info:Info,i:Info. ((¬ Read(t1)(u,info) ∨
Read(t2)(u,info)) ∧
(¬ Read(t2)(u,info) ∨
Read(t1)(u,info)...(1795 characters)"]
1 -> 2 [label = "forall
", color = red]
1 -> 1 [label = "forall x:User,i:Info may (Some(choice1))
True → Written += (i,x);", color = green]
2 [label = "Node 2:
∀ u:User,info:Info. (Read(t1)(u,info) ↔ eq())"]
0 -> 1 [label = "forall
", color = red]
1 [label = "Node 1:
∀ u:User,info:Info. ((Read(t1)(u,info) ↔ eq()) ∧
((¬ Read(t1)(u,info) ∧
(¬ Written(t1)(info,u) ∨
¬ choice0(t1)(u,info))) ∨
Read(t2)(u,info) ∨
(Written(t2)(info,u) ∧
((¬ informed(t1)(u) ∧
choice0(t1)(u,info)) ∨
(informed(t1)(u) ∧
choice0(t2)(u,info))))) ∧
((¬ Read(t2)(u,info) ∧
(¬ Written(t2)(info,u) ∨
((informed(t1)(u) ∨
¬ choice0(t1)(u,info)) ∧
(¬ informed(t1)(u) ∨
¬ choice0(t2)(u,info))))) ∨
Read(t1)(u,info) ∨
(Written(t1)(info,u) ∧
choice0(t1)(u,info)))) ∧
∀ u:User,info:Info,i:Info. (((¬ Read(t1)(u,info) ∧
(¬ Written(t1)(info,u) ∨
¬ choice0(t1)(u,info))) ∨
Read(t2)(u,info) ∨
(Written(t2)(info,u) ∧
((¬ informed(t1)(u) ∧
choice0(t1...(3030 characters)"]
2 -> 2 [label = "forall
", color = green]
3 -> 1 [label = "forall
", color = green]
}
\ No newline at end of file
digraph "Invariant Labelling" {
1 -> 3 [label = "forall x:User,i:Info may (Some(choice0))
Written(i,x) → Read += (x,i);", color = green]
0 [label = "Node 0:
True"]
3 [label = "Node 3:
∀ u:User,info:Info. ((Read(t1)(u,info) ↔ eq()) ∧
(¬ Read(t1)(u,info) ∨
Read(t2)(u,info)) ∧
(¬ Read(t2)(u,info) ∨
Read(t1)(u,info)) ∧
((¬ Read(t1)(u,info) ∧
(¬ Written(t1)(info,u) ∨
¬ choice0(t1)(u,info))) ∨
Read(t2)(u,info) ∨
(Written(t2)(info,u) ∧
((¬ informed(t1)(u) ∧
choice0(t1)(u,info)) ∨
(informed(t1)(u) ∧
choice0(t2)(u,info))))) ∧
((¬ Read(t2)(u,info) ∧
(¬ Written(t2)(info,u) ∨
((informed(t1)(u) ∨
¬ choice0(t1)(u,info)) ∧
(¬ informed(t1)(u) ∨
¬ choice0(t2)(u,info))))) ∨
Read(t1)(u,info) ∨
(Written(t1)(info,u) ∧
choice0(t1)(u,info)))) ∧
∀ u:User,info:Info,i:Info. ((¬ Read(t1)(u,info) ∨
Read(t2)(u,info)) ∧
(¬ Read(t2)(u,info) ∨
Read(t1)(u,info)...(1795 characters)"]
1 -> 1 [label = "forall x:User,i:Info may (Some(choice1))
True → Written += (i,x);", color = green]
2 [label = "Node 2:
∀ u:User,info:Info. (Read(t1)(u,info) ↔ eq())"]
1 -> 2 [label = "forall
", color = green]
0 -> 1 [label = "forall
", color = red]
1 [label = "Node 1:
∀ u:User,info:Info. ((Read(t1)(u,info) ↔ eq()) ∧
((¬ Read(t1)(u,info) ∧
(¬ Written(t1)(info,u) ∨
¬ choice0(t1)(u,info))) ∨
Read(t2)(u,info) ∨
(Written(t2)(info,u) ∧
((¬ informed(t1)(u) ∧
choice0(t1)(u,info)) ∨
(informed(t1)(u) ∧
choice0(t2)(u,info))))) ∧
((¬ Read(t2)(u,info) ∧
(¬ Written(t2)(info,u) ∨
((informed(t1)(u) ∨
¬ choice0(t1)(u,info)) ∧
(¬ informed(t1)(u) ∨
¬ choice0(t2)(u,info))))) ∨
Read(t1)(u,info) ∨
(Written(t1)(info,u) ∧
choice0(t1)(u,info)))) ∧
∀ u:User,info:Info,i:Info. (((¬ Read(t1)(u,info) ∧
(¬ Written(t1)(info,u) ∨
¬ choice0(t1)(u,info))) ∨
Read(t2)(u,info) ∨
(Written(t2)(info,u) ∧
((¬ informed(t1)(u) ∧
choice0(t1...(3030 characters)"]
2 -> 2 [label = "forall
", color = green]
3 -> 1 [label = "forall
", color = green]
}
\ No newline at end of file
digraph "Invariant Labelling" {
1 -> 3 [label = "forall x:User,i:Info may (Some(choice0))
Written(i,x) → Read += (x,i);", color = red]
0 [label = "Node 0:
True"]
3 [label = "Node 3:
∀ u:User,info:Info. (Read(t1)(u,info) ↔ eq())"]
1 [label = "Node 1:
∀ u:User,info:Info. (Read(t1)(u,info) ↔ eq())"]
1 -> 2 [label = "forall
", color = red]
1 -> 1 [label = "forall x:User,i:Info may (Some(choice1))
True → Written += (i,x);", color = red]
2 [label = "Node 2:
∀ u:User,info:Info. (Read(t1)(u,info) ↔ eq())"]
0 -> 1 [label = "forall
", color = red]
2 -> 2 [label = "forall
", color = green]
3 -> 1 [label = "forall
", color = green]
}
\ No newline at end of file
digraph "Invariant Labelling" {
1 -> 3 [label = "forall x:User,i:Info may (Some(choice0))
Written(i,x) → Read += (x,i);", color = green]
0 [label = "Node 0:
True"]
3 -> 1 [label = "forall
", color = red]
3 [label = "Node 3:
∀ u:User,info:Info. (Read(t1)(u,info) ↔ eq())"]
1 -> 2 [label = "forall
", color = red]
1 -> 1 [label = "forall x:User,i:Info may (Some(choice1))
True → Written += (i,x);", color = red]
2 [label = "Node 2:
∀ u:User,info:Info. (Read(t1)(u,info) ↔ eq())"]
0 -> 1 [label = "forall
", color = red]
2 -> 2 [label = "forall
", color = green]
1 [label = "Node 1:
∀ u:User,info:Info. ((Read(t1)(u,info) ↔ eq()) ∧
((¬ Read(t1)(u,info) ∧
(¬ Written(t1)(info,u) ∨
¬ choice0(t1)(u,info))) ∨
Read(t2)(u,info) ∨
(Written(t2)(info,u) ∧
((¬ informed(t1)(u) ∧
choice0(t1)(u,info)) ∨
(informed(t1)(u) ∧
choice0(t2)(u,info))))) ∧
((¬ Read(t2)(u,info) ∧
(¬ Written(t2)(info,u) ∨
((informed(t1)(u) ∨
¬ choice0(t1)(u,info)) ∧
(¬ informed(t1)(u) ∨
¬ choice0(t2)(u,info))))) ∨
Read(t1)(u,info) ∨
(Written(t1)(info,u) ∧
choice0(t1)(u,info))))"]
}
\ No newline at end of file
digraph "Invariant Labelling" {
1 -> 3 [label = "forall x:User,i:Info may (Some(choice0))
Written(i,x) → Read += (x,i);", color = red]
0 [label = "Node 0:
True"]
1 -> 2 [label = "forall
", color = red]
3 [label = "Node 3:
∀ u:User,info:Info. ((Read(t1)(u,info) ↔ eq()) ∧
(¬ Read(t1)(u,info) ∨
Read(t2)(u,info)) ∧
(¬ Read(t2)(u,info) ∨
Read(t1)(u,info)) ∧
((¬ Read(t1)(u,info) ∧
(¬ Written(t1)(info,u) ∨
¬ choice0(t1)(u,info))) ∨
Read(t2)(u,info) ∨
(Written(t2)(info,u) ∧
((¬ informed(t1)(u) ∧
choice0(t1)(u,info)) ∨
(informed(t1)(u) ∧
choice0(t2)(u,info))))) ∧
((¬ Read(t2)(u,info) ∧
(¬ Written(t2)(info,u) ∨
((informed(t1)(u) ∨
¬ choice0(t1)(u,info)) ∧
(¬ informed(t1)(u) ∨
¬ choice0(t2)(u,info))))) ∨
Read(t1)(u,info) ∨
(Written(t1)(info,u) ∧
choice0(t1)(u,info))))"]
1 -> 1 [label = "forall x:User,i:Info may (Some(choice1))
True → Written += (i,x);", color = red]
2 [label = "Node 2:
∀ u:User,info:Info. (Read(t1)(u,info) ↔ eq())"]
0 -> 1 [label = "forall
", color = red]
2 -> 2 [label = "forall
", color = green]
1 [label = "Node 1:
∀ u:User,info:Info. ((Read(t1)(u,info) ↔ eq()) ∧
((¬ Read(t1)(u,info) ∧
(¬ Written(t1)(info,u) ∨
¬ choice0(t1)(u,info))) ∨
Read(t2)(u,info) ∨
(Written(t2)(info,u) ∧
((¬ informed(t1)(u) ∧
choice0(t1)(u,info)) ∨
(informed(t1)(u) ∧
choice0(t2)(u,info))))) ∧
((¬ Read(t2)(u,info) ∧
(¬ Written(t2)(info,u) ∨
((informed(t1)(u) ∨
¬ choice0(t1)(u,info)) ∧
(¬ informed(t1)(u) ∨
¬ choice0(t2)(u,info))))) ∨
Read(t1)(u,info) ∨
(Written(t1)(info,u) ∧
choice0(t1)(u,info))))"]
3 -> 1 [label = "forall
", color = green]
}
\ No newline at end of file
digraph "Invariant Labelling" {
1 -> 3 [label = "forall x:User,i:Info may (Some(choice0))
Written(i,x) → Read += (x,i);", color = green]
0 [label = "Node 0:
True"]
3 -> 1 [label = "forall
", color = red]
1 -> 2 [label = "forall
", color = red]
3 [label = "Node 3:
∀ u:User,info:Info. ((Read(t1)(u,info) ↔ eq()) ∧
(¬ Read(t1)(u,info) ∨
Read(t2)(u,info)) ∧
(¬ Read(t2)(u,info) ∨
Read(t1)(u,info)) ∧
((¬ Read(t1)(u,info) ∧
(¬ Written(t1)(info,u) ∨
¬ choice0(t1)(u,info))) ∨
Read(t2)(u,info) ∨
(Written(t2)(info,u) ∧
((¬ informed(t1)(u) ∧
choice0(t1)(u,info)) ∨
(informed(t1)(u) ∧
choice0(t2)(u,info))))) ∧
((¬ Read(t2)(u,info) ∧
(¬ Written(t2)(info,u) ∨
((informed(t1)(u) ∨
¬ choice0(t1)(u,info)) ∧
(¬ informed(t1)(u) ∨
¬ choice0(t2)(u,info))))) ∨
Read(t1)(u,info) ∨
(Written(t1)(info,u) ∧
choice0(t1)(u,info))))"]
1 -> 1 [label = "forall x:User,i:Info may (Some(choice1))
True → Written += (i,x);", color = red]
2 [label = "Node 2:
∀ u:User,info:Info. (Read(t1)(u,info) ↔ eq())"]
0 -> 1 [label = "forall
", color = red]
2 -> 2 [label = "forall
", color = green]
1 [label = "Node 1:
∀ u:User,info:Info. ((Read(t1)(u,info) ↔ eq()) ∧
((¬ Read(t1)(u,info) ∧
(¬ Written(t1)(info,u) ∨
¬ choice0(t1)(u,info))) ∨
Read(t2)(u,info) ∨
(Written(t2)(info,u) ∧
((¬ informed(t1)(u) ∧
choice0(t1)(u,info)) ∨
(informed(t1)(u) ∧
choice0(t2)(u,info))))) ∧
((¬ Read(t2)(u,info) ∧
(¬ Written(t2)(info,u) ∨
((informed(t1)(u) ∨
¬ choice0(t1)(u,info)) ∧
(¬ informed(t1)(u) ∨
¬ choice0(t2)(u,info))))) ∨
Read(t1)(u,info) ∨
(Written(t1)(info,u) ∧
choice0(t1)(u,info)))) ∧
∀ u:User,info:Info,i:Info. (((¬ Read(t1)(u,info) ∧
(¬ Written(t1)(info,u) ∨
¬ choice0(t1)(u,info))) ∨
Read(t2)(u,info) ∨
(Written(t2)(info,u) ∧
((¬ informed(t1)(u) ∧
choice0(t1...(1633 characters)"]
}
\ No newline at end of file
This diff is collapsed.
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!