Bob is kind. Bob is quiet. Bob is rough. Bob is round. Dave is big. Dave is furry. Dave is quiet. Dave is rough. Fiona is big. Fiona is furry. Fiona is kind. Fiona is rough. Fiona is round. Harry is furry. Harry is kind. Harry is quiet. All big, kind people are rough. Furry, rough people are quiet. White, round people are furry. Furry people are round. If someone is kind and furry then they are big. If Bob is big and Bob is round then Bob is furry. All white, round people are furry. If Harry is kind and Harry is big then Harry is furry.
Bob is kind.
("Bob" "is" "kind" "+")
Bob is quiet.
("Bob" "is" "quiet" "+")
Bob is rough.
("Bob" "is" "rough" "+")
Bob is round.
("Bob" "is" "round" "+")
Dave is big.
("Dave" "is" "big" "+")
Dave is furry.
("Dave" "is" "furry" "+")
Dave is quiet.
("Dave" "is" "quiet" "+")
Dave is rough.
("Dave" "is" "rough" "+")
Fiona is big.
("Fiona" "is" "big" "+")
Fiona is furry.
("Fiona" "is" "furry" "+")
Fiona is kind.
("Fiona" "is" "kind" "+")
Fiona is rough.
("Fiona" "is" "rough" "+")
Fiona is round.
("Fiona" "is" "round" "+")
Harry is furry.
("Harry" "is" "furry" "+")
Harry is kind.
("Harry" "is" "kind" "+")
Harry is quiet.
("Harry" "is" "quiet" "+")
All big, kind people are rough.
((("someone" "is" "big" "+") ("someone" "is" "kind" "+")) -> ("someone" "is" "rough" "+"))
Furry, rough people are quiet.
((("someone" "is" "furry" "+") ("someone" "is" "rough" "+")) -> ("someone" "is" "quiet" "+"))
White, round people are furry.
((("someone" "is" "white" "+") ("someone" "is" "round" "+")) -> ("someone" "is" "furry" "+"))
Furry people are round.
((("someone" "is" "furry" "+")) -> ("someone" "is" "round" "+"))
If someone is kind and furry then they are big.
((("someone" "is" "kind" "+") ("someone" "is" "furry" "+")) -> ("someone" "is" "big" "+"))
If Bob is big and Bob is round then Bob is furry.
((("Bob" "is" "big" "+") ("Bob" "is" "round" "+")) -> ("Bob" "is" "furry" "+"))
All white, round people are furry.
((("someone" "is" "white" "+") ("someone" "is" "round" "+")) -> ("someone" "is" "furry" "+"))
If Harry is kind and Harry is big then Harry is furry.
((("Harry" "is" "kind" "+") ("Harry" "is" "big" "+")) -> ("Harry" "is" "furry" "+"))
Dave is furry.
True
1
proof
[(triple6)]
("Dave" "is" "furry" "+")
triple6
Fiona is not furry.
False
1
inv-proof
[(triple10)]
("Fiona" "is" "furry" "-")
triple10
Harry is big.
True
3
proof
[(((triple15 triple14) -> rule5))]
("Harry" "is" "big" "+")
((triple15 triple14) -> (rule5 % int1))
Harry is big.
("Harry" "is" "big" "+")
int1
Harry is not big.
False
3
inv-proof
[(((triple15 triple14) -> rule5))]
("Harry" "is" "big" "-")
((triple15 triple14) -> (rule5 % int1))
Harry is big.
("Harry" "is" "big" "+")
int1
Harry is rough.
True
5
proof
[(((((triple15 triple14) -> rule5) triple15) -> rule1))]
("Harry" "is" "rough" "+")
((((triple15 triple14) -> (rule5 % int2)) triple15) -> (rule1 % int1))
Harry is rough.
("Harry" "is" "rough" "+")
int1
Harry is big.
("Harry" "is" "big" "+")
int2
Harry is not rough.
False
5
inv-proof
[(((((triple15 triple14) -> rule5) triple15) -> rule1))]
("Harry" "is" "rough" "-")
((((triple15 triple14) -> (rule5 % int2)) triple15) -> (rule1 % int1))
Harry is rough.
("Harry" "is" "rough" "+")
int1
Harry is big.
("Harry" "is" "big" "+")
int2
Bob is not big.
Unknown
inv-rconc
[@2: Bob is big.[CWA. Example of deepest failure = (rule5 <- rule3 <- FAIL)]]
("Bob" "is" "big" "-")
Bob is furry.
Unknown
rconc
[@3: Bob is furry.[CWA. Example of deepest failure = (rule6 <- rule5 <- rule3 <- FAIL)]]
("Bob" "is" "furry" "+")
Bob is not white.
Unknown
inv-random
[@0: Bob is white.[CWA. Example of deepest failure = (FAIL)]]
("Bob" "is" "white" "-")
Dave is kind.
Unknown
random
[@0: Dave is kind.[CWA. Example of deepest failure = (FAIL)]]
("Dave" "is" "kind" "+")
Dave is not white.
Unknown
inv-random
[@0: Dave is white.[CWA. Example of deepest failure = (FAIL)]]
("Dave" "is" "white" "-")
Fiona is white.
Unknown
random
[@0: Fiona is white.[CWA. Example of deepest failure = (FAIL)]]
("Fiona" "is" "white" "+")
@0: Bob is kind.[(triple1)] Bob is quiet.[(triple2)] Bob is rough.[(triple3)] Bob is round.[(triple4)] Dave is big.[(triple5)] Dave is furry.[(triple6)] Dave is quiet.[(triple7 OR ((triple6 triple8) -> rule2))] Dave is rough.[(triple8)] Fiona is big.[(triple9 OR ((triple11 triple10) -> rule5))] Fiona is furry.[(triple10)] Fiona is kind.[(triple11)] Fiona is rough.[(triple12 OR ((triple9 triple11) -> rule1) OR ((((triple11 triple10) -> rule5) triple11) -> rule1))] Fiona is round.[(triple13 OR ((triple10) -> rule4))] Harry is furry.[(triple14)] Harry is kind.[(triple15)] Harry is quiet.[(triple16 OR ((triple14 ((((triple15 triple14) -> rule5) triple15) -> rule1)) -> rule2))] @1: Dave is round.[(((triple6) -> rule4))] Fiona is quiet.[(((triple10 triple12) -> rule2) OR ((triple10 ((triple9 triple11) -> rule1)) -> rule2) OR ((triple10 ((((triple11 triple10) -> rule5) triple11) -> rule1)) -> rule2))] Harry is big.[(((triple15 triple14) -> rule5))] Harry is round.[(((triple14) -> rule4))] @2: Harry is rough.[(((((triple15 triple14) -> rule5) triple15) -> rule1))]
Bob is kind.
("Bob" "is" "kind" "+")
triple1
Bob is quiet.
("Bob" "is" "quiet" "+")
triple2
Bob is rough.
("Bob" "is" "rough" "+")
triple3
Bob is round.
("Bob" "is" "round" "+")
triple4
Dave is big.
("Dave" "is" "big" "+")
triple5
Dave is furry.
("Dave" "is" "furry" "+")
triple6
Dave is quiet.
("Dave" "is" "quiet" "+")
triple7
((triple6 triple8) -> (rule2 % int1))
Dave is quiet.
("Dave" "is" "quiet" "+")
int1
Dave is rough.
("Dave" "is" "rough" "+")
triple8
Fiona is big.
("Fiona" "is" "big" "+")
triple9
((triple11 triple10) -> (rule5 % int1))
Fiona is big.
("Fiona" "is" "big" "+")
int1
Fiona is furry.
("Fiona" "is" "furry" "+")
triple10
Fiona is kind.
("Fiona" "is" "kind" "+")
triple11
Fiona is rough.
("Fiona" "is" "rough" "+")
triple12
((triple9 triple11) -> (rule1 % int1))
Fiona is rough.
("Fiona" "is" "rough" "+")
int1
((((triple11 triple10) -> (rule5 % int2)) triple11) -> (rule1 % int1))
Fiona is rough.
("Fiona" "is" "rough" "+")
int1
Fiona is big.
("Fiona" "is" "big" "+")
int2
Fiona is round.
("Fiona" "is" "round" "+")
triple13
((triple10) -> (rule4 % int1))
Fiona is round.
("Fiona" "is" "round" "+")
int1
Harry is furry.
("Harry" "is" "furry" "+")
triple14
Harry is kind.
("Harry" "is" "kind" "+")
triple15
Harry is quiet.
("Harry" "is" "quiet" "+")
triple16
((triple14 ((((triple15 triple14) -> (rule5 % int3)) triple15) -> (rule1 % int2))) -> (rule2 % int1))
Harry is quiet.
("Harry" "is" "quiet" "+")
int1
Harry is rough.
("Harry" "is" "rough" "+")
int2
Harry is big.
("Harry" "is" "big" "+")
int3
Dave is round.
("Dave" "is" "round" "+")
((triple6) -> (rule4 % int1))
Dave is round.
("Dave" "is" "round" "+")
int1
Fiona is quiet.
("Fiona" "is" "quiet" "+")
((triple10 triple12) -> (rule2 % int1))
Fiona is quiet.
("Fiona" "is" "quiet" "+")
int1
((triple10 ((triple9 triple11) -> (rule1 % int2))) -> (rule2 % int1))
Fiona is quiet.
("Fiona" "is" "quiet" "+")
int1
Fiona is rough.
("Fiona" "is" "rough" "+")
int2
((triple10 ((((triple11 triple10) -> (rule5 % int3)) triple11) -> (rule1 % int2))) -> (rule2 % int1))
Fiona is quiet.
("Fiona" "is" "quiet" "+")
int1
Fiona is rough.
("Fiona" "is" "rough" "+")
int2
Fiona is big.
("Fiona" "is" "big" "+")
int3
Harry is big.
("Harry" "is" "big" "+")
((triple15 triple14) -> (rule5 % int1))
Harry is big.
("Harry" "is" "big" "+")
int1
Harry is round.
("Harry" "is" "round" "+")
((triple14) -> (rule4 % int1))
Harry is round.
("Harry" "is" "round" "+")
int1
Harry is rough.
("Harry" "is" "rough" "+")
((((triple15 triple14) -> (rule5 % int2)) triple15) -> (rule1 % int1))
Harry is rough.
("Harry" "is" "rough" "+")
int1
Harry is big.
("Harry" "is" "big" "+")
int2