Bob is cold. Bob is green. Bob is kind. Bob is nice. Bob is quiet. Bob is smart. Bob is white. Dave is kind. Dave is smart. Erin is green. Erin is smart. Erin is white. Fiona is green. Fiona is kind. Fiona is nice. Fiona is quiet. All white things are green. All kind, smart things are white. If something is white then it is smart. If Dave is quiet then Dave is green. If Dave is kind then Dave is quiet. All cold things are white.
Bob is cold.
("Bob" "is" "cold" "+")
Bob is green.
("Bob" "is" "green" "+")
Bob is kind.
("Bob" "is" "kind" "+")
Bob is nice.
("Bob" "is" "nice" "+")
Bob is quiet.
("Bob" "is" "quiet" "+")
Bob is smart.
("Bob" "is" "smart" "+")
Bob is white.
("Bob" "is" "white" "+")
Dave is kind.
("Dave" "is" "kind" "+")
Dave is smart.
("Dave" "is" "smart" "+")
Erin is green.
("Erin" "is" "green" "+")
Erin is smart.
("Erin" "is" "smart" "+")
Erin is white.
("Erin" "is" "white" "+")
Fiona is green.
("Fiona" "is" "green" "+")
Fiona is kind.
("Fiona" "is" "kind" "+")
Fiona is nice.
("Fiona" "is" "nice" "+")
Fiona is quiet.
("Fiona" "is" "quiet" "+")
All white things are green.
((("something" "is" "white" "+")) -> ("something" "is" "green" "+"))
All kind, smart things are white.
((("something" "is" "kind" "+") ("something" "is" "smart" "+")) -> ("something" "is" "white" "+"))
If something is white then it is smart.
((("something" "is" "white" "+")) -> ("something" "is" "smart" "+"))
If Dave is quiet then Dave is green.
((("Dave" "is" "quiet" "+")) -> ("Dave" "is" "green" "+"))
If Dave is kind then Dave is quiet.
((("Dave" "is" "kind" "+")) -> ("Dave" "is" "quiet" "+"))
All cold things are white.
((("something" "is" "cold" "+")) -> ("something" "is" "white" "+"))
Bob is cold.
True
1
proof
[(triple1)]
("Bob" "is" "cold" "+")
triple1
Bob is not smart.
False
1
inv-proof
[(triple6 OR ((triple7) -> rule3) OR ((((triple1) -> rule6)) -> rule3))]
("Bob" "is" "smart" "-")
triple6
((triple7) -> (rule3 % int1))
Bob is smart.
("Bob" "is" "smart" "+")
int1
((((triple1) -> (rule6 % int2))) -> (rule3 % int1))
Bob is smart.
("Bob" "is" "smart" "+")
int1
Bob is white.
("Bob" "is" "white" "+")
int2
Dave is white.
True
3
proof
[(((triple8 triple9) -> rule2))]
("Dave" "is" "white" "+")
((triple8 triple9) -> (rule2 % int1))
Dave is white.
("Dave" "is" "white" "+")
int1
Dave is not quiet.
False
2
inv-proof
[(((triple8) -> rule5))]
("Dave" "is" "quiet" "-")
((triple8) -> (rule5 % int1))
Dave is quiet.
("Dave" "is" "quiet" "+")
int1
Dave is green.
True
3
proof
[(((((triple8) -> rule5)) -> rule4) OR ((((triple8 triple9) -> rule2)) -> rule1))]
("Dave" "is" "green" "+")
((((triple8) -> (rule5 % int2))) -> (rule4 % int1))
Dave is green.
("Dave" "is" "green" "+")
int1
Dave is quiet.
("Dave" "is" "quiet" "+")
int2
((((triple8 triple9) -> (rule2 % int2))) -> (rule1 % int1))
Dave is green.
("Dave" "is" "green" "+")
int1
Dave is white.
("Dave" "is" "white" "+")
int2
Dave is not green.
False
3
inv-proof
[(((((triple8) -> rule5)) -> rule4) OR ((((triple8 triple9) -> rule2)) -> rule1))]
("Dave" "is" "green" "-")
((((triple8) -> (rule5 % int2))) -> (rule4 % int1))
Dave is green.
("Dave" "is" "green" "+")
int1
Dave is quiet.
("Dave" "is" "quiet" "+")
int2
((((triple8 triple9) -> (rule2 % int2))) -> (rule1 % int1))
Dave is green.
("Dave" "is" "green" "+")
int1
Dave is white.
("Dave" "is" "white" "+")
int2
Fiona is not smart.
Unknown
inv-rconc
[@2: Fiona is smart.[CWA. Example of deepest failure = (rule3 <- rule2 <- FAIL)]]
("Fiona" "is" "smart" "-")
Fiona is white.
Unknown
rconc
[@3: Fiona is white.[CWA. Example of deepest failure = (rule2 <- rule3 <- rule6 <- FAIL)]]
("Fiona" "is" "white" "+")
Erin is not cold.
Unknown
inv-random
[@0: Erin is cold.[CWA. Example of deepest failure = (FAIL)]]
("Erin" "is" "cold" "-")
Dave is cold.
Unknown
random
[@0: Dave is cold.[CWA. Example of deepest failure = (FAIL)]]
("Dave" "is" "cold" "+")
Erin is not nice.
Unknown
inv-random
[@0: Erin is nice.[CWA. Example of deepest failure = (FAIL)]]
("Erin" "is" "nice" "-")
Erin is quiet.
Unknown
random
[@0: Erin is quiet.[CWA. Example of deepest failure = (FAIL)]]
("Erin" "is" "quiet" "+")
@0: Bob is cold.[(triple1)] Bob is green.[(triple2 OR ((triple7) -> rule1) OR ((((triple1) -> rule6)) -> rule1) OR ((((triple3 triple6) -> rule2)) -> rule1))] Bob is kind.[(triple3)] Bob is nice.[(triple4)] Bob is quiet.[(triple5)] Bob is smart.[(triple6 OR ((triple7) -> rule3) OR ((((triple1) -> rule6)) -> rule3))] Bob is white.[(triple7 OR ((triple1) -> rule6) OR ((triple3 triple6) -> rule2))] Dave is kind.[(triple8)] Dave is smart.[(triple9)] Erin is green.[(triple10 OR ((triple12) -> rule1))] Erin is smart.[(triple11 OR ((triple12) -> rule3))] Erin is white.[(triple12)] Fiona is green.[(triple13)] Fiona is kind.[(triple14)] Fiona is nice.[(triple15)] Fiona is quiet.[(triple16)] @1: Dave is quiet.[(((triple8) -> rule5))] Dave is white.[(((triple8 triple9) -> rule2))] @2: Dave is green.[(((((triple8) -> rule5)) -> rule4) OR ((((triple8 triple9) -> rule2)) -> rule1))]
Bob is cold.
("Bob" "is" "cold" "+")
triple1
Bob is green.
("Bob" "is" "green" "+")
triple2
((triple7) -> (rule1 % int1))
Bob is green.
("Bob" "is" "green" "+")
int1
((((triple1) -> (rule6 % int2))) -> (rule1 % int1))
Bob is green.
("Bob" "is" "green" "+")
int1
Bob is white.
("Bob" "is" "white" "+")
int2
((((triple3 triple6) -> (rule2 % int2))) -> (rule1 % int1))
Bob is green.
("Bob" "is" "green" "+")
int1
Bob is white.
("Bob" "is" "white" "+")
int2
Bob is kind.
("Bob" "is" "kind" "+")
triple3
Bob is nice.
("Bob" "is" "nice" "+")
triple4
Bob is quiet.
("Bob" "is" "quiet" "+")
triple5
Bob is smart.
("Bob" "is" "smart" "+")
triple6
((triple7) -> (rule3 % int1))
Bob is smart.
("Bob" "is" "smart" "+")
int1
((((triple1) -> (rule6 % int2))) -> (rule3 % int1))
Bob is smart.
("Bob" "is" "smart" "+")
int1
Bob is white.
("Bob" "is" "white" "+")
int2
Bob is white.
("Bob" "is" "white" "+")
triple7
((triple1) -> (rule6 % int1))
Bob is white.
("Bob" "is" "white" "+")
int1
((triple3 triple6) -> (rule2 % int1))
Bob is white.
("Bob" "is" "white" "+")
int1
Dave is kind.
("Dave" "is" "kind" "+")
triple8
Dave is smart.
("Dave" "is" "smart" "+")
triple9
Erin is green.
("Erin" "is" "green" "+")
triple10
((triple12) -> (rule1 % int1))
Erin is green.
("Erin" "is" "green" "+")
int1
Erin is smart.
("Erin" "is" "smart" "+")
triple11
((triple12) -> (rule3 % int1))
Erin is smart.
("Erin" "is" "smart" "+")
int1
Erin is white.
("Erin" "is" "white" "+")
triple12
Fiona is green.
("Fiona" "is" "green" "+")
triple13
Fiona is kind.
("Fiona" "is" "kind" "+")
triple14
Fiona is nice.
("Fiona" "is" "nice" "+")
triple15
Fiona is quiet.
("Fiona" "is" "quiet" "+")
triple16
Dave is quiet.
("Dave" "is" "quiet" "+")
((triple8) -> (rule5 % int1))
Dave is quiet.
("Dave" "is" "quiet" "+")
int1
Dave is white.
("Dave" "is" "white" "+")
((triple8 triple9) -> (rule2 % int1))
Dave is white.
("Dave" "is" "white" "+")
int1
Dave is green.
("Dave" "is" "green" "+")
((((triple8) -> (rule5 % int2))) -> (rule4 % int1))
Dave is green.
("Dave" "is" "green" "+")
int1
Dave is quiet.
("Dave" "is" "quiet" "+")
int2
((((triple8 triple9) -> (rule2 % int2))) -> (rule1 % int1))
Dave is green.
("Dave" "is" "green" "+")
int1
Dave is white.
("Dave" "is" "white" "+")
int2