Anne is cold. Erin is big. Fiona is furry. Gary is round. If someone is furry then they are nice. Cold people are white. Furry people are nice. Nice, furry people are white. Blue people are nice. If someone is white and round then they are cold.
Anne is cold.
("Anne" "is" "cold" "+")
Erin is big.
("Erin" "is" "big" "+")
Fiona is furry.
("Fiona" "is" "furry" "+")
Gary is round.
("Gary" "is" "round" "+")
If someone is furry then they are nice.
((("someone" "is" "furry" "+")) -> ("someone" "is" "nice" "+"))
Cold people are white.
((("someone" "is" "cold" "+")) -> ("someone" "is" "white" "+"))
Furry people are nice.
((("someone" "is" "furry" "+")) -> ("someone" "is" "nice" "+"))
Nice, furry people are white.
((("someone" "is" "nice" "+") ("someone" "is" "furry" "+")) -> ("someone" "is" "white" "+"))
Blue people are nice.
((("someone" "is" "blue" "+")) -> ("someone" "is" "nice" "+"))
If someone is white and round then they are cold.
((("someone" "is" "white" "+") ("someone" "is" "round" "+")) -> ("someone" "is" "cold" "+"))
Anne is cold.
True
1
proof
[(triple1)]
("Anne" "is" "cold" "+")
triple1
Erin is not big.
False
1
inv-proof
[(triple2)]
("Erin" "is" "big" "-")
triple2
Fiona is nice.
True
2
proof
[(((triple3) -> rule1) OR ((triple3) -> rule3))]
("Fiona" "is" "nice" "+")
((triple3) -> (rule1 % int1))
Fiona is nice.
("Fiona" "is" "nice" "+")
int1
((triple3) -> (rule3 % int1))
Fiona is nice.
("Fiona" "is" "nice" "+")
int1
Fiona is not nice.
False
2
inv-proof
[(((triple3) -> rule1) OR ((triple3) -> rule3))]
("Fiona" "is" "nice" "-")
((triple3) -> (rule1 % int1))
Fiona is nice.
("Fiona" "is" "nice" "+")
int1
((triple3) -> (rule3 % int1))
Fiona is nice.
("Fiona" "is" "nice" "+")
int1
Fiona is white.
True
4
proof
[(((((triple3) -> rule1) triple3) -> rule4) OR ((((triple3) -> rule3) triple3) -> rule4))]
("Fiona" "is" "white" "+")
((((triple3) -> (rule1 % int2)) triple3) -> (rule4 % int1))
Fiona is white.
("Fiona" "is" "white" "+")
int1
Fiona is nice.
("Fiona" "is" "nice" "+")
int2
((((triple3) -> (rule3 % int2)) triple3) -> (rule4 % int1))
Fiona is white.
("Fiona" "is" "white" "+")
int1
Fiona is nice.
("Fiona" "is" "nice" "+")
int2
Fiona is not white.
False
4
inv-proof
[(((((triple3) -> rule1) triple3) -> rule4) OR ((((triple3) -> rule3) triple3) -> rule4))]
("Fiona" "is" "white" "-")
((((triple3) -> (rule1 % int2)) triple3) -> (rule4 % int1))
Fiona is white.
("Fiona" "is" "white" "+")
int1
Fiona is nice.
("Fiona" "is" "nice" "+")
int2
((((triple3) -> (rule3 % int2)) triple3) -> (rule4 % int1))
Fiona is white.
("Fiona" "is" "white" "+")
int1
Fiona is nice.
("Fiona" "is" "nice" "+")
int2
Anne is not nice.
Unknown
inv-rconc
[@1: Anne is nice.[CWA. Example of deepest failure = (rule1 <- FAIL)]]
("Anne" "is" "nice" "-")
Erin is nice.
Unknown
rconc
[@1: Erin is nice.[CWA. Example of deepest failure = (rule1 <- FAIL)]]
("Erin" "is" "nice" "+")
Gary is not cold.
Unknown
inv-rconc
[@2: Gary is cold.[CWA. Example of deepest failure = (rule6 <- rule2 <- FAIL)]]
("Gary" "is" "cold" "-")
Gary is blue.
Unknown
random
[@0: Gary is blue.[CWA. Example of deepest failure = (FAIL)]]
("Gary" "is" "blue" "+")
Erin is not round.
Unknown
inv-random
[@0: Erin is round.[CWA. Example of deepest failure = (FAIL)]]
("Erin" "is" "round" "-")
Gary is furry.
Unknown
random
[@0: Gary is furry.[CWA. Example of deepest failure = (FAIL)]]
("Gary" "is" "furry" "+")
@0: Anne is cold.[(triple1)] Erin is big.[(triple2)] Fiona is furry.[(triple3)] Gary is round.[(triple4)] @1: Anne is white.[(((triple1) -> rule2))] Fiona is nice.[(((triple3) -> rule1) OR ((triple3) -> rule3))] @2: Fiona is white.[(((((triple3) -> rule1) triple3) -> rule4) OR ((((triple3) -> rule3) triple3) -> rule4))]
Anne is cold.
("Anne" "is" "cold" "+")
triple1
Erin is big.
("Erin" "is" "big" "+")
triple2
Fiona is furry.
("Fiona" "is" "furry" "+")
triple3
Gary is round.
("Gary" "is" "round" "+")
triple4
Anne is white.
("Anne" "is" "white" "+")
((triple1) -> (rule2 % int1))
Anne is white.
("Anne" "is" "white" "+")
int1
Fiona is nice.
("Fiona" "is" "nice" "+")
((triple3) -> (rule1 % int1))
Fiona is nice.
("Fiona" "is" "nice" "+")
int1
((triple3) -> (rule3 % int1))
Fiona is nice.
("Fiona" "is" "nice" "+")
int1
Fiona is white.
("Fiona" "is" "white" "+")
((((triple3) -> (rule1 % int2)) triple3) -> (rule4 % int1))
Fiona is white.
("Fiona" "is" "white" "+")
int1
Fiona is nice.
("Fiona" "is" "nice" "+")
int2
((((triple3) -> (rule3 % int2)) triple3) -> (rule4 % int1))
Fiona is white.
("Fiona" "is" "white" "+")
int1
Fiona is nice.
("Fiona" "is" "nice" "+")
int2