Bob is cold. Bob is kind. Bob is red. Bob is round. Bob is young. Dave is kind. Dave is quiet. Dave is red. Dave is rough. Dave is young. Erin is quiet. Erin is red. Erin is rough. Harry is cold. Harry is round. Harry is young. All kind things are young. Red, young things are kind. If Erin is kind then Erin is young. All cold things are red. Quiet things are round. All cold, young things are quiet.
Bob is cold.
("Bob" "is" "cold" "+")
Bob is kind.
("Bob" "is" "kind" "+")
Bob is red.
("Bob" "is" "red" "+")
Bob is round.
("Bob" "is" "round" "+")
Bob is young.
("Bob" "is" "young" "+")
Dave is kind.
("Dave" "is" "kind" "+")
Dave is quiet.
("Dave" "is" "quiet" "+")
Dave is red.
("Dave" "is" "red" "+")
Dave is rough.
("Dave" "is" "rough" "+")
Dave is young.
("Dave" "is" "young" "+")
Erin is quiet.
("Erin" "is" "quiet" "+")
Erin is red.
("Erin" "is" "red" "+")
Erin is rough.
("Erin" "is" "rough" "+")
Harry is cold.
("Harry" "is" "cold" "+")
Harry is round.
("Harry" "is" "round" "+")
Harry is young.
("Harry" "is" "young" "+")
All kind things are young.
((("something" "is" "kind" "+")) -> ("something" "is" "young" "+"))
Red, young things are kind.
((("something" "is" "red" "+") ("something" "is" "young" "+")) -> ("something" "is" "kind" "+"))
If Erin is kind then Erin is young.
((("Erin" "is" "kind" "+")) -> ("Erin" "is" "young" "+"))
All cold things are red.
((("something" "is" "cold" "+")) -> ("something" "is" "red" "+"))
Quiet things are round.
((("something" "is" "quiet" "+")) -> ("something" "is" "round" "+"))
All cold, young things are quiet.
((("something" "is" "cold" "+") ("something" "is" "young" "+")) -> ("something" "is" "quiet" "+"))
Bob is cold.
True
1
proof
[(triple1)]
("Bob" "is" "cold" "+")
triple1
Dave is not rough.
False
1
inv-proof
[(triple9)]
("Dave" "is" "rough" "-")
triple9
Erin is round.
True
2
proof
[(((triple11) -> rule5))]
("Erin" "is" "round" "+")
((triple11) -> (rule5 % int1))
Erin is round.
("Erin" "is" "round" "+")
int1
Bob is not quiet.
False
3
inv-proof
[(((triple1 triple5) -> rule6) OR ((triple1 ((triple2) -> rule1)) -> rule6))]
("Bob" "is" "quiet" "-")
((triple1 triple5) -> (rule6 % int1))
Bob is quiet.
("Bob" "is" "quiet" "+")
int1
((triple1 ((triple2) -> (rule1 % int2))) -> (rule6 % int1))
Bob is quiet.
("Bob" "is" "quiet" "+")
int1
Bob is young.
("Bob" "is" "young" "+")
int2
Harry is kind.
True
4
proof
[(((((triple14) -> rule4) triple16) -> rule2))]
("Harry" "is" "kind" "+")
((((triple14) -> (rule4 % int2)) triple16) -> (rule2 % int1))
Harry is kind.
("Harry" "is" "kind" "+")
int1
Harry is red.
("Harry" "is" "red" "+")
int2
Harry is not kind.
False
4
inv-proof
[(((((triple14) -> rule4) triple16) -> rule2))]
("Harry" "is" "kind" "-")
((((triple14) -> (rule4 % int2)) triple16) -> (rule2 % int1))
Harry is kind.
("Harry" "is" "kind" "+")
int1
Harry is red.
("Harry" "is" "red" "+")
int2
Erin is not young.
Unknown
inv-rconc
[@3: Erin is young.[CWA. Example of deepest failure = (rule1 <- rule2 <- rule3 <- FAIL)]]
("Erin" "is" "young" "-")
Erin is kind.
Unknown
rconc
[@2: Erin is kind.[CWA. Example of deepest failure = (rule2 <- rule1 <- FAIL)]]
("Erin" "is" "kind" "+")
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" "+")
Harry is not rough.
Unknown
inv-random
[@0: Harry is rough.[CWA. Example of deepest failure = (FAIL)]]
("Harry" "is" "rough" "-")
Bob is rough.
Unknown
random
[@0: Bob is rough.[CWA. Example of deepest failure = (FAIL)]]
("Bob" "is" "rough" "+")
@0: Bob is cold.[(triple1)] Bob is kind.[(triple2 OR ((triple3 triple5) -> rule2) OR ((((triple1) -> rule4) triple5) -> rule2))] Bob is red.[(triple3 OR ((triple1) -> rule4))] Bob is round.[(triple4 OR ((((triple1 triple5) -> rule6)) -> rule5) OR ((((triple1 ((triple2) -> rule1)) -> rule6)) -> rule5))] Bob is young.[(triple5 OR ((triple2) -> rule1))] Dave is kind.[(triple6 OR ((triple8 triple10) -> rule2))] Dave is quiet.[(triple7)] Dave is red.[(triple8)] Dave is rough.[(triple9)] Dave is young.[(triple10 OR ((triple6) -> rule1))] Erin is quiet.[(triple11)] Erin is red.[(triple12)] Erin is rough.[(triple13)] Harry is cold.[(triple14)] Harry is round.[(triple15 OR ((((triple14 triple16) -> rule6)) -> rule5))] Harry is young.[(triple16)] @1: Bob is quiet.[(((triple1 triple5) -> rule6) OR ((triple1 ((triple2) -> rule1)) -> rule6))] Dave is round.[(((triple7) -> rule5))] Erin is round.[(((triple11) -> rule5))] Harry is quiet.[(((triple14 triple16) -> rule6))] Harry is red.[(((triple14) -> rule4))] @2: Harry is kind.[(((((triple14) -> rule4) triple16) -> rule2))]
Bob is cold.
("Bob" "is" "cold" "+")
triple1
Bob is kind.
("Bob" "is" "kind" "+")
triple2
((triple3 triple5) -> (rule2 % int1))
Bob is kind.
("Bob" "is" "kind" "+")
int1
((((triple1) -> (rule4 % int2)) triple5) -> (rule2 % int1))
Bob is kind.
("Bob" "is" "kind" "+")
int1
Bob is red.
("Bob" "is" "red" "+")
int2
Bob is red.
("Bob" "is" "red" "+")
triple3
((triple1) -> (rule4 % int1))
Bob is red.
("Bob" "is" "red" "+")
int1
Bob is round.
("Bob" "is" "round" "+")
triple4
((((triple1 triple5) -> (rule6 % int2))) -> (rule5 % int1))
Bob is round.
("Bob" "is" "round" "+")
int1
Bob is quiet.
("Bob" "is" "quiet" "+")
int2
((((triple1 ((triple2) -> (rule1 % int3))) -> (rule6 % int2))) -> (rule5 % int1))
Bob is round.
("Bob" "is" "round" "+")
int1
Bob is quiet.
("Bob" "is" "quiet" "+")
int2
Bob is young.
("Bob" "is" "young" "+")
int3
Bob is young.
("Bob" "is" "young" "+")
triple5
((triple2) -> (rule1 % int1))
Bob is young.
("Bob" "is" "young" "+")
int1
Dave is kind.
("Dave" "is" "kind" "+")
triple6
((triple8 triple10) -> (rule2 % int1))
Dave is kind.
("Dave" "is" "kind" "+")
int1
Dave is quiet.
("Dave" "is" "quiet" "+")
triple7
Dave is red.
("Dave" "is" "red" "+")
triple8
Dave is rough.
("Dave" "is" "rough" "+")
triple9
Dave is young.
("Dave" "is" "young" "+")
triple10
((triple6) -> (rule1 % int1))
Dave is young.
("Dave" "is" "young" "+")
int1
Erin is quiet.
("Erin" "is" "quiet" "+")
triple11
Erin is red.
("Erin" "is" "red" "+")
triple12
Erin is rough.
("Erin" "is" "rough" "+")
triple13
Harry is cold.
("Harry" "is" "cold" "+")
triple14
Harry is round.
("Harry" "is" "round" "+")
triple15
((((triple14 triple16) -> (rule6 % int2))) -> (rule5 % int1))
Harry is round.
("Harry" "is" "round" "+")
int1
Harry is quiet.
("Harry" "is" "quiet" "+")
int2
Harry is young.
("Harry" "is" "young" "+")
triple16
Bob is quiet.
("Bob" "is" "quiet" "+")
((triple1 triple5) -> (rule6 % int1))
Bob is quiet.
("Bob" "is" "quiet" "+")
int1
((triple1 ((triple2) -> (rule1 % int2))) -> (rule6 % int1))
Bob is quiet.
("Bob" "is" "quiet" "+")
int1
Bob is young.
("Bob" "is" "young" "+")
int2
Dave is round.
("Dave" "is" "round" "+")
((triple7) -> (rule5 % int1))
Dave is round.
("Dave" "is" "round" "+")
int1
Erin is round.
("Erin" "is" "round" "+")
((triple11) -> (rule5 % int1))
Erin is round.
("Erin" "is" "round" "+")
int1
Harry is quiet.
("Harry" "is" "quiet" "+")
((triple14 triple16) -> (rule6 % int1))
Harry is quiet.
("Harry" "is" "quiet" "+")
int1
Harry is red.
("Harry" "is" "red" "+")
((triple14) -> (rule4 % int1))
Harry is red.
("Harry" "is" "red" "+")
int1
Harry is kind.
("Harry" "is" "kind" "+")
((((triple14) -> (rule4 % int2)) triple16) -> (rule2 % int1))
Harry is kind.
("Harry" "is" "kind" "+")
int1
Harry is red.
("Harry" "is" "red" "+")
int2