Fiona is kind. Fiona is white. Gary is kind. All kind things are red. If Fiona is furry then Fiona is quiet. Red, furry things are blue. Big, red things are white. If something is white and quiet then it is blue. If something is red then it is blue. If Fiona is white then Fiona is big. Blue, kind things are quiet.
Fiona is kind.
("Fiona" "is" "kind" "+")
Fiona is white.
("Fiona" "is" "white" "+")
Gary is kind.
("Gary" "is" "kind" "+")
All kind things are red.
((("something" "is" "kind" "+")) -> ("something" "is" "red" "+"))
If Fiona is furry then Fiona is quiet.
((("Fiona" "is" "furry" "+")) -> ("Fiona" "is" "quiet" "+"))
Red, furry things are blue.
((("something" "is" "red" "+") ("something" "is" "furry" "+")) -> ("something" "is" "blue" "+"))
Big, red things are white.
((("something" "is" "big" "+") ("something" "is" "red" "+")) -> ("something" "is" "white" "+"))
If something is white and quiet then it is blue.
((("something" "is" "white" "+") ("something" "is" "quiet" "+")) -> ("something" "is" "blue" "+"))
If something is red then it is blue.
((("something" "is" "red" "+")) -> ("something" "is" "blue" "+"))
If Fiona is white then Fiona is big.
((("Fiona" "is" "white" "+")) -> ("Fiona" "is" "big" "+"))
Blue, kind things are quiet.
((("something" "is" "blue" "+") ("something" "is" "kind" "+")) -> ("something" "is" "quiet" "+"))
Fiona is white.
True
1
proof
[(triple2)]
("Fiona" "is" "white" "+")
triple2
Gary is not kind.
False
1
inv-proof
[(triple3)]
("Gary" "is" "kind" "-")
triple3
Fiona is red.
True
2
proof
[(((triple1) -> rule1))]
("Fiona" "is" "red" "+")
((triple1) -> (rule1 % int1))
Fiona is red.
("Fiona" "is" "red" "+")
int1
Fiona is not red.
False
2
inv-proof
[(((triple1) -> rule1))]
("Fiona" "is" "red" "-")
((triple1) -> (rule1 % int1))
Fiona is red.
("Fiona" "is" "red" "+")
int1
Gary is blue.
True
3
proof
[(((((triple3) -> rule1)) -> rule6))]
("Gary" "is" "blue" "+")
((((triple3) -> (rule1 % int2))) -> (rule6 % int1))
Gary is blue.
("Gary" "is" "blue" "+")
int1
Gary is red.
("Gary" "is" "red" "+")
int2
Gary is not blue.
False
3
inv-proof
[(((((triple3) -> rule1)) -> rule6))]
("Gary" "is" "blue" "-")
((((triple3) -> (rule1 % int2))) -> (rule6 % int1))
Gary is blue.
("Gary" "is" "blue" "+")
int1
Gary is red.
("Gary" "is" "red" "+")
int2
Gary is quiet.
True
5
proof
[(((((((triple3) -> rule1)) -> rule6) triple3) -> rule8))]
("Gary" "is" "quiet" "+")
((((((triple3) -> (rule1 % int3))) -> (rule6 % int2)) triple3) -> (rule8 % int1))
Gary is quiet.
("Gary" "is" "quiet" "+")
int1
Gary is blue.
("Gary" "is" "blue" "+")
int2
Gary is red.
("Gary" "is" "red" "+")
int3
Gary is not quiet.
False
5
inv-proof
[(((((((triple3) -> rule1)) -> rule6) triple3) -> rule8))]
("Gary" "is" "quiet" "-")
((((((triple3) -> (rule1 % int3))) -> (rule6 % int2)) triple3) -> (rule8 % int1))
Gary is quiet.
("Gary" "is" "quiet" "+")
int1
Gary is blue.
("Gary" "is" "blue" "+")
int2
Gary is red.
("Gary" "is" "red" "+")
int3
Gary is not white.
Unknown
inv-rconc
[@1: Gary is white.[CWA. Example of deepest failure = (rule4 <- FAIL)]]
("Gary" "is" "white" "-")
Gary is big.
Unknown
random
[@0: Gary is big.[CWA. Example of deepest failure = (FAIL)]]
("Gary" "is" "big" "+")
Gary is not furry.
Unknown
inv-random
[@0: Gary is furry.[CWA. Example of deepest failure = (FAIL)]]
("Gary" "is" "furry" "-")
Fiona is furry.
Unknown
random
[@0: Fiona is furry.[CWA. Example of deepest failure = (FAIL)]]
("Fiona" "is" "furry" "+")
@0: Fiona is kind.[(triple1)] Fiona is white.[(triple2)] Gary is kind.[(triple3)] @1: Fiona is big.[(((triple2) -> rule7))] Fiona is red.[(((triple1) -> rule1))] Gary is red.[(((triple3) -> rule1))] @2: Fiona is blue.[(((((triple1) -> rule1)) -> rule6))] Gary is blue.[(((((triple3) -> rule1)) -> rule6))] @3: Fiona is quiet.[(((((((triple1) -> rule1)) -> rule6) triple1) -> rule8))] Gary is quiet.[(((((((triple3) -> rule1)) -> rule6) triple3) -> rule8))]
Fiona is kind.
("Fiona" "is" "kind" "+")
triple1
Fiona is white.
("Fiona" "is" "white" "+")
triple2
Gary is kind.
("Gary" "is" "kind" "+")
triple3
Fiona is big.
("Fiona" "is" "big" "+")
((triple2) -> (rule7 % int1))
Fiona is big.
("Fiona" "is" "big" "+")
int1
Fiona is red.
("Fiona" "is" "red" "+")
((triple1) -> (rule1 % int1))
Fiona is red.
("Fiona" "is" "red" "+")
int1
Gary is red.
("Gary" "is" "red" "+")
((triple3) -> (rule1 % int1))
Gary is red.
("Gary" "is" "red" "+")
int1
Fiona is blue.
("Fiona" "is" "blue" "+")
((((triple1) -> (rule1 % int2))) -> (rule6 % int1))
Fiona is blue.
("Fiona" "is" "blue" "+")
int1
Fiona is red.
("Fiona" "is" "red" "+")
int2
Gary is blue.
("Gary" "is" "blue" "+")
((((triple3) -> (rule1 % int2))) -> (rule6 % int1))
Gary is blue.
("Gary" "is" "blue" "+")
int1
Gary is red.
("Gary" "is" "red" "+")
int2
Fiona is quiet.
("Fiona" "is" "quiet" "+")
((((((triple1) -> (rule1 % int3))) -> (rule6 % int2)) triple1) -> (rule8 % int1))
Fiona is quiet.
("Fiona" "is" "quiet" "+")
int1
Fiona is blue.
("Fiona" "is" "blue" "+")
int2
Fiona is red.
("Fiona" "is" "red" "+")
int3
Gary is quiet.
("Gary" "is" "quiet" "+")
((((((triple3) -> (rule1 % int3))) -> (rule6 % int2)) triple3) -> (rule8 % int1))
Gary is quiet.
("Gary" "is" "quiet" "+")
int1
Gary is blue.
("Gary" "is" "blue" "+")
int2
Gary is red.
("Gary" "is" "red" "+")
int3