Fiona is cold. Fiona is smart. Gary is cold. Gary is red. Gary is smart. Harry is blue. Harry is young. If something is red and smart then it is white. All blue things are white. Young, blue things are smart. White, young things are quiet. Quiet, young things are red. Blue, white things are quiet. If something is white and smart then it is cold. If Harry is young and Harry is cold then Harry is quiet.
Fiona is cold.
("Fiona" "is" "cold" "+")
Fiona is smart.
("Fiona" "is" "smart" "+")
Gary is cold.
("Gary" "is" "cold" "+")
Gary is red.
("Gary" "is" "red" "+")
Gary is smart.
("Gary" "is" "smart" "+")
Harry is blue.
("Harry" "is" "blue" "+")
Harry is young.
("Harry" "is" "young" "+")
If something is red and smart then it is white.
((("something" "is" "red" "+") ("something" "is" "smart" "+")) -> ("something" "is" "white" "+"))
All blue things are white.
((("something" "is" "blue" "+")) -> ("something" "is" "white" "+"))
Young, blue things are smart.
((("something" "is" "young" "+") ("something" "is" "blue" "+")) -> ("something" "is" "smart" "+"))
White, young things are quiet.
((("something" "is" "white" "+") ("something" "is" "young" "+")) -> ("something" "is" "quiet" "+"))
Quiet, young things are red.
((("something" "is" "quiet" "+") ("something" "is" "young" "+")) -> ("something" "is" "red" "+"))
Blue, white things are quiet.
((("something" "is" "blue" "+") ("something" "is" "white" "+")) -> ("something" "is" "quiet" "+"))
If something is white and smart then it is cold.
((("something" "is" "white" "+") ("something" "is" "smart" "+")) -> ("something" "is" "cold" "+"))
If Harry is young and Harry is cold then Harry is quiet.
((("Harry" "is" "young" "+") ("Harry" "is" "cold" "+")) -> ("Harry" "is" "quiet" "+"))
Gary is cold.
True
1
proof
[(triple3 OR ((((triple4 triple5) -> rule1) triple5) -> rule7))]
("Gary" "is" "cold" "+")
triple3
((((triple4 triple5) -> (rule1 % int2)) triple5) -> (rule7 % int1))
Gary is cold.
("Gary" "is" "cold" "+")
int1
Gary is white.
("Gary" "is" "white" "+")
int2
Gary is not red.
False
1
inv-proof
[(triple4)]
("Gary" "is" "red" "-")
triple4
Gary is white.
True
3
proof
[(((triple4 triple5) -> rule1))]
("Gary" "is" "white" "+")
((triple4 triple5) -> (rule1 % int1))
Gary is white.
("Gary" "is" "white" "+")
int1
Gary is not white.
False
3
inv-proof
[(((triple4 triple5) -> rule1))]
("Gary" "is" "white" "-")
((triple4 triple5) -> (rule1 % int1))
Gary is white.
("Gary" "is" "white" "+")
int1
Harry is quiet.
True
4
proof
[(((triple6 ((triple6) -> rule2)) -> rule6) OR ((((triple6) -> rule2) triple7) -> rule4) OR ((triple7 ((((triple6) -> rule2) ((triple7 triple6) -> rule3)) -> rule7)) -> rule8))]
("Harry" "is" "quiet" "+")
((triple6 ((triple6) -> (rule2 % int2))) -> (rule6 % int1))
Harry is quiet.
("Harry" "is" "quiet" "+")
int1
Harry is white.
("Harry" "is" "white" "+")
int2
((((triple6) -> (rule2 % int2)) triple7) -> (rule4 % int1))
Harry is quiet.
("Harry" "is" "quiet" "+")
int1
Harry is white.
("Harry" "is" "white" "+")
int2
((triple7 ((((triple6) -> (rule2 % int4)) ((triple7 triple6) -> (rule3 % int3))) -> (rule7 % int2))) -> (rule8 % int1))
Harry is quiet.
("Harry" "is" "quiet" "+")
int1
Harry is cold.
("Harry" "is" "cold" "+")
int2
Harry is smart.
("Harry" "is" "smart" "+")
int3
Harry is white.
("Harry" "is" "white" "+")
int4
Harry is not quiet.
False
4
inv-proof
[(((triple6 ((triple6) -> rule2)) -> rule6) OR ((((triple6) -> rule2) triple7) -> rule4) OR ((triple7 ((((triple6) -> rule2) ((triple7 triple6) -> rule3)) -> rule7)) -> rule8))]
("Harry" "is" "quiet" "-")
((triple6 ((triple6) -> (rule2 % int2))) -> (rule6 % int1))
Harry is quiet.
("Harry" "is" "quiet" "+")
int1
Harry is white.
("Harry" "is" "white" "+")
int2
((((triple6) -> (rule2 % int2)) triple7) -> (rule4 % int1))
Harry is quiet.
("Harry" "is" "quiet" "+")
int1
Harry is white.
("Harry" "is" "white" "+")
int2
((triple7 ((((triple6) -> (rule2 % int4)) ((triple7 triple6) -> (rule3 % int3))) -> (rule7 % int2))) -> (rule8 % int1))
Harry is quiet.
("Harry" "is" "quiet" "+")
int1
Harry is cold.
("Harry" "is" "cold" "+")
int2
Harry is smart.
("Harry" "is" "smart" "+")
int3
Harry is white.
("Harry" "is" "white" "+")
int4
Fiona is not red.
Unknown
inv-rconc
[@1: Fiona is red.[CWA. Example of deepest failure = (rule5 <- FAIL)]]
("Fiona" "is" "red" "-")
Fiona is white.
Unknown
rconc
[@2: Fiona is white.[CWA. Example of deepest failure = (rule1 <- rule5 <- FAIL)]]
("Fiona" "is" "white" "+")
Fiona is not quiet.
Unknown
inv-rconc
[@1: Fiona is quiet.[CWA. Example of deepest failure = (rule4 <- FAIL)]]
("Fiona" "is" "quiet" "-")
Fiona is young.
Unknown
random
[@0: Fiona is young.[CWA. Example of deepest failure = (FAIL)]]
("Fiona" "is" "young" "+")
Gary is not young.
Unknown
inv-random
[@0: Gary is young.[CWA. Example of deepest failure = (FAIL)]]
("Gary" "is" "young" "-")
Fiona is blue.
Unknown
random
[@0: Fiona is blue.[CWA. Example of deepest failure = (FAIL)]]
("Fiona" "is" "blue" "+")
@0: Fiona is cold.[(triple1)] Fiona is smart.[(triple2)] Gary is cold.[(triple3 OR ((((triple4 triple5) -> rule1) triple5) -> rule7))] Gary is red.[(triple4)] Gary is smart.[(triple5)] Harry is blue.[(triple6)] Harry is young.[(triple7)] @1: Gary is white.[(((triple4 triple5) -> rule1))] Harry is smart.[(((triple7 triple6) -> rule3))] Harry is white.[(((triple6) -> rule2))] @2: Harry is cold.[(((((triple6) -> rule2) ((triple7 triple6) -> rule3)) -> rule7))] Harry is quiet.[(((triple6 ((triple6) -> rule2)) -> rule6) OR ((((triple6) -> rule2) triple7) -> rule4) OR ((triple7 ((((triple6) -> rule2) ((triple7 triple6) -> rule3)) -> rule7)) -> rule8))] @3: Harry is red.[(((((triple6 ((triple6) -> rule2)) -> rule6) triple7) -> rule5) OR ((((((triple6) -> rule2) triple7) -> rule4) triple7) -> rule5) OR ((((triple7 ((((triple6) -> rule2) ((triple7 triple6) -> rule3)) -> rule7)) -> rule8) triple7) -> rule5))]
Fiona is cold.
("Fiona" "is" "cold" "+")
triple1
Fiona is smart.
("Fiona" "is" "smart" "+")
triple2
Gary is cold.
("Gary" "is" "cold" "+")
triple3
((((triple4 triple5) -> (rule1 % int2)) triple5) -> (rule7 % int1))
Gary is cold.
("Gary" "is" "cold" "+")
int1
Gary is white.
("Gary" "is" "white" "+")
int2
Gary is red.
("Gary" "is" "red" "+")
triple4
Gary is smart.
("Gary" "is" "smart" "+")
triple5
Harry is blue.
("Harry" "is" "blue" "+")
triple6
Harry is young.
("Harry" "is" "young" "+")
triple7
Gary is white.
("Gary" "is" "white" "+")
((triple4 triple5) -> (rule1 % int1))
Gary is white.
("Gary" "is" "white" "+")
int1
Harry is smart.
("Harry" "is" "smart" "+")
((triple7 triple6) -> (rule3 % int1))
Harry is smart.
("Harry" "is" "smart" "+")
int1
Harry is white.
("Harry" "is" "white" "+")
((triple6) -> (rule2 % int1))
Harry is white.
("Harry" "is" "white" "+")
int1
Harry is cold.
("Harry" "is" "cold" "+")
((((triple6) -> (rule2 % int3)) ((triple7 triple6) -> (rule3 % int2))) -> (rule7 % int1))
Harry is cold.
("Harry" "is" "cold" "+")
int1
Harry is smart.
("Harry" "is" "smart" "+")
int2
Harry is white.
("Harry" "is" "white" "+")
int3
Harry is quiet.
("Harry" "is" "quiet" "+")
((triple6 ((triple6) -> (rule2 % int2))) -> (rule6 % int1))
Harry is quiet.
("Harry" "is" "quiet" "+")
int1
Harry is white.
("Harry" "is" "white" "+")
int2
((((triple6) -> (rule2 % int2)) triple7) -> (rule4 % int1))
Harry is quiet.
("Harry" "is" "quiet" "+")
int1
Harry is white.
("Harry" "is" "white" "+")
int2
((triple7 ((((triple6) -> (rule2 % int4)) ((triple7 triple6) -> (rule3 % int3))) -> (rule7 % int2))) -> (rule8 % int1))
Harry is quiet.
("Harry" "is" "quiet" "+")
int1
Harry is cold.
("Harry" "is" "cold" "+")
int2
Harry is smart.
("Harry" "is" "smart" "+")
int3
Harry is white.
("Harry" "is" "white" "+")
int4
Harry is red.
("Harry" "is" "red" "+")
((((triple6 ((triple6) -> (rule2 % int3))) -> (rule6 % int2)) triple7) -> (rule5 % int1))
Harry is red.
("Harry" "is" "red" "+")
int1
Harry is quiet.
("Harry" "is" "quiet" "+")
int2
Harry is white.
("Harry" "is" "white" "+")
int3
((((((triple6) -> (rule2 % int3)) triple7) -> (rule4 % int2)) triple7) -> (rule5 % int1))
Harry is red.
("Harry" "is" "red" "+")
int1
Harry is quiet.
("Harry" "is" "quiet" "+")
int2
Harry is white.
("Harry" "is" "white" "+")
int3
((((triple7 ((((triple6) -> (rule2 % int5)) ((triple7 triple6) -> (rule3 % int4))) -> (rule7 % int3))) -> (rule8 % int2)) triple7) -> (rule5 % int1))
Harry is red.
("Harry" "is" "red" "+")
int1
Harry is quiet.
("Harry" "is" "quiet" "+")
int2
Harry is cold.
("Harry" "is" "cold" "+")
int3
Harry is smart.
("Harry" "is" "smart" "+")
int4
Harry is white.
("Harry" "is" "white" "+")
int5