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