Bob is cold. Bob is quiet. Bob is red. Bob is white. Bob is young. Charlie is green. Charlie is nice. Charlie is quiet. Charlie is red. Charlie is young. Erin is cold. Erin is green. Erin is nice. Erin is quiet. Erin is red. Erin is young. All green people are nice. If someone is cold then they are green. Quiet people are cold.
Bob is cold.
("Bob" "is" "cold" "+")
Bob is quiet.
("Bob" "is" "quiet" "+")
Bob is red.
("Bob" "is" "red" "+")
Bob is white.
("Bob" "is" "white" "+")
Bob is young.
("Bob" "is" "young" "+")
Charlie is green.
("Charlie" "is" "green" "+")
Charlie is nice.
("Charlie" "is" "nice" "+")
Charlie is quiet.
("Charlie" "is" "quiet" "+")
Charlie is red.
("Charlie" "is" "red" "+")
Charlie is young.
("Charlie" "is" "young" "+")
Erin is cold.
("Erin" "is" "cold" "+")
Erin is green.
("Erin" "is" "green" "+")
Erin is nice.
("Erin" "is" "nice" "+")
Erin is quiet.
("Erin" "is" "quiet" "+")
Erin is red.
("Erin" "is" "red" "+")
Erin is young.
("Erin" "is" "young" "+")
All green people are nice.
((("someone" "is" "green" "+")) -> ("someone" "is" "nice" "+"))
If someone is cold then they are green.
((("someone" "is" "cold" "+")) -> ("someone" "is" "green" "+"))
Quiet people are cold.
((("someone" "is" "quiet" "+")) -> ("someone" "is" "cold" "+"))
Erin is red.
True
1
proof
[(triple15)]
("Erin" "is" "red" "+")
triple15
Bob is not quiet.
False
1
inv-proof
[(triple2)]
("Bob" "is" "quiet" "-")
triple2
Charlie is cold.
True
2
proof
[(((triple8) -> rule3))]
("Charlie" "is" "cold" "+")
((triple8) -> (rule3 % int1))
Charlie is cold.
("Charlie" "is" "cold" "+")
int1
Bob is not green.
False
2
inv-proof
[(((triple1) -> rule2) OR ((((triple2) -> rule3)) -> rule2))]
("Bob" "is" "green" "-")
((triple1) -> (rule2 % int1))
Bob is green.
("Bob" "is" "green" "+")
int1
((((triple2) -> (rule3 % int2))) -> (rule2 % int1))
Bob is green.
("Bob" "is" "green" "+")
int1
Bob is cold.
("Bob" "is" "cold" "+")
int2
Bob is nice.
True
3
proof
[(((((triple1) -> rule2)) -> rule1) OR ((((((triple2) -> rule3)) -> rule2)) -> rule1))]
("Bob" "is" "nice" "+")
((((triple1) -> (rule2 % int2))) -> (rule1 % int1))
Bob is nice.
("Bob" "is" "nice" "+")
int1
Bob is green.
("Bob" "is" "green" "+")
int2
((((((triple2) -> (rule3 % int3))) -> (rule2 % int2))) -> (rule1 % int1))
Bob is nice.
("Bob" "is" "nice" "+")
int1
Bob is green.
("Bob" "is" "green" "+")
int2
Bob is cold.
("Bob" "is" "cold" "+")
int3
Bob is not nice.
False
3
inv-proof
[(((((triple1) -> rule2)) -> rule1) OR ((((((triple2) -> rule3)) -> rule2)) -> rule1))]
("Bob" "is" "nice" "-")
((((triple1) -> (rule2 % int2))) -> (rule1 % int1))
Bob is nice.
("Bob" "is" "nice" "+")
int1
Bob is green.
("Bob" "is" "green" "+")
int2
((((((triple2) -> (rule3 % int3))) -> (rule2 % int2))) -> (rule1 % int1))
Bob is nice.
("Bob" "is" "nice" "+")
int1
Bob is green.
("Bob" "is" "green" "+")
int2
Bob is cold.
("Bob" "is" "cold" "+")
int3
Erin is not white.
Unknown
inv-random
[@0: Erin is white.[CWA. Example of deepest failure = (FAIL)]]
("Erin" "is" "white" "-")
Charlie is white.
Unknown
random
[@0: Charlie is white.[CWA. Example of deepest failure = (FAIL)]]
("Charlie" "is" "white" "+")
@0: Bob is cold.[(triple1 OR ((triple2) -> rule3))] Bob is quiet.[(triple2)] Bob is red.[(triple3)] Bob is white.[(triple4)] Bob is young.[(triple5)] Charlie is green.[(triple6 OR ((((triple8) -> rule3)) -> rule2))] Charlie is nice.[(triple7 OR ((triple6) -> rule1) OR ((((((triple8) -> rule3)) -> rule2)) -> rule1))] Charlie is quiet.[(triple8)] Charlie is red.[(triple9)] Charlie is young.[(triple10)] Erin is cold.[(triple11 OR ((triple14) -> rule3))] Erin is green.[(triple12 OR ((triple11) -> rule2) OR ((((triple14) -> rule3)) -> rule2))] Erin is nice.[(triple13 OR ((triple12) -> rule1) OR ((((triple11) -> rule2)) -> rule1) OR ((((((triple14) -> rule3)) -> rule2)) -> rule1))] Erin is quiet.[(triple14)] Erin is red.[(triple15)] Erin is young.[(triple16)] @1: Bob is green.[(((triple1) -> rule2) OR ((((triple2) -> rule3)) -> rule2))] Charlie is cold.[(((triple8) -> rule3))] @2: Bob is nice.[(((((triple1) -> rule2)) -> rule1) OR ((((((triple2) -> rule3)) -> rule2)) -> rule1))]
Bob is cold.
("Bob" "is" "cold" "+")
triple1
((triple2) -> (rule3 % int1))
Bob is cold.
("Bob" "is" "cold" "+")
int1
Bob is quiet.
("Bob" "is" "quiet" "+")
triple2
Bob is red.
("Bob" "is" "red" "+")
triple3
Bob is white.
("Bob" "is" "white" "+")
triple4
Bob is young.
("Bob" "is" "young" "+")
triple5
Charlie is green.
("Charlie" "is" "green" "+")
triple6
((((triple8) -> (rule3 % int2))) -> (rule2 % int1))
Charlie is green.
("Charlie" "is" "green" "+")
int1
Charlie is cold.
("Charlie" "is" "cold" "+")
int2
Charlie is nice.
("Charlie" "is" "nice" "+")
triple7
((triple6) -> (rule1 % int1))
Charlie is nice.
("Charlie" "is" "nice" "+")
int1
((((((triple8) -> (rule3 % int3))) -> (rule2 % int2))) -> (rule1 % int1))
Charlie is nice.
("Charlie" "is" "nice" "+")
int1
Charlie is green.
("Charlie" "is" "green" "+")
int2
Charlie is cold.
("Charlie" "is" "cold" "+")
int3
Charlie is quiet.
("Charlie" "is" "quiet" "+")
triple8
Charlie is red.
("Charlie" "is" "red" "+")
triple9
Charlie is young.
("Charlie" "is" "young" "+")
triple10
Erin is cold.
("Erin" "is" "cold" "+")
triple11
((triple14) -> (rule3 % int1))
Erin is cold.
("Erin" "is" "cold" "+")
int1
Erin is green.
("Erin" "is" "green" "+")
triple12
((triple11) -> (rule2 % int1))
Erin is green.
("Erin" "is" "green" "+")
int1
((((triple14) -> (rule3 % int2))) -> (rule2 % int1))
Erin is green.
("Erin" "is" "green" "+")
int1
Erin is cold.
("Erin" "is" "cold" "+")
int2
Erin is nice.
("Erin" "is" "nice" "+")
triple13
((triple12) -> (rule1 % int1))
Erin is nice.
("Erin" "is" "nice" "+")
int1
((((triple11) -> (rule2 % int2))) -> (rule1 % int1))
Erin is nice.
("Erin" "is" "nice" "+")
int1
Erin is green.
("Erin" "is" "green" "+")
int2
((((((triple14) -> (rule3 % int3))) -> (rule2 % int2))) -> (rule1 % int1))
Erin is nice.
("Erin" "is" "nice" "+")
int1
Erin is green.
("Erin" "is" "green" "+")
int2
Erin is cold.
("Erin" "is" "cold" "+")
int3
Erin is quiet.
("Erin" "is" "quiet" "+")
triple14
Erin is red.
("Erin" "is" "red" "+")
triple15
Erin is young.
("Erin" "is" "young" "+")
triple16
Bob is green.
("Bob" "is" "green" "+")
((triple1) -> (rule2 % int1))
Bob is green.
("Bob" "is" "green" "+")
int1
((((triple2) -> (rule3 % int2))) -> (rule2 % int1))
Bob is green.
("Bob" "is" "green" "+")
int1
Bob is cold.
("Bob" "is" "cold" "+")
int2
Charlie is cold.
("Charlie" "is" "cold" "+")
((triple8) -> (rule3 % int1))
Charlie is cold.
("Charlie" "is" "cold" "+")
int1
Bob is nice.
("Bob" "is" "nice" "+")
((((triple1) -> (rule2 % int2))) -> (rule1 % int1))
Bob is nice.
("Bob" "is" "nice" "+")
int1
Bob is green.
("Bob" "is" "green" "+")
int2
((((((triple2) -> (rule3 % int3))) -> (rule2 % int2))) -> (rule1 % int1))
Bob is nice.
("Bob" "is" "nice" "+")
int1
Bob is green.
("Bob" "is" "green" "+")
int2
Bob is cold.
("Bob" "is" "cold" "+")
int3