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