Charlie is blue. Charlie is cold. Charlie is green. Charlie is rough. Erin is cold. Erin is not furry. Erin is not green. Erin is nice. Fiona is big. Fiona is not blue. Fiona is furry. Fiona is nice. Gary is big. Gary is green. Gary is rough. If someone is nice and not big then they are green. Cold people are nice. All furry, nice people are cold. All rough people are cold. Furry people are cold. Green, big people are not blue.
Charlie is blue.
("Charlie" "is" "blue" "+")
Charlie is cold.
("Charlie" "is" "cold" "+")
Charlie is green.
("Charlie" "is" "green" "+")
Charlie is rough.
("Charlie" "is" "rough" "+")
Erin is cold.
("Erin" "is" "cold" "+")
Erin is not furry.
("Erin" "is" "furry" "-")
Erin is not green.
("Erin" "is" "green" "-")
Erin is nice.
("Erin" "is" "nice" "+")
Fiona is big.
("Fiona" "is" "big" "+")
Fiona is not blue.
("Fiona" "is" "blue" "-")
Fiona is furry.
("Fiona" "is" "furry" "+")
Fiona is nice.
("Fiona" "is" "nice" "+")
Gary is big.
("Gary" "is" "big" "+")
Gary is green.
("Gary" "is" "green" "+")
Gary is rough.
("Gary" "is" "rough" "+")
If someone is nice and not big then they are green.
((("someone" "is" "nice" "+") ("someone" "is" "big" "~")) -> ("someone" "is" "green" "+"))
Cold people are nice.
((("someone" "is" "cold" "+")) -> ("someone" "is" "nice" "+"))
All furry, nice people are cold.
((("someone" "is" "furry" "+") ("someone" "is" "nice" "+")) -> ("someone" "is" "cold" "+"))
All rough people are cold.
((("someone" "is" "rough" "+")) -> ("someone" "is" "cold" "+"))
Furry people are cold.
((("someone" "is" "furry" "+")) -> ("someone" "is" "cold" "+"))
Green, big people are not blue.
((("someone" "is" "green" "+") ("someone" "is" "big" "+")) -> ("someone" "is" "blue" "-"))
Erin is cold.
True
1
proof
[(triple5)]
("Erin" "is" "cold" "+")
triple5
Fiona is not nice.
False
1
inv-proof
[(triple12 OR ((((triple11) -> rule5)) -> rule2))]
("Fiona" "is" "nice" "-")
triple12
((((triple11) -> (rule5 % int2))) -> (rule2 % int1))
Fiona is nice.
("Fiona" "is" "nice" "+")
int1
Fiona is cold.
("Fiona" "is" "cold" "+")
int2
Fiona is not green.
Unknown
inv-rconc
[@1: Fiona is green.[CWA. Example of deepest failure = (rule1 <- FAIL)]]
("Fiona" "is" "green" "-")
Gary is furry.
Unknown
random
[@0: Gary is furry.[CWA. Example of deepest failure = (FAIL)]]
("Gary" "is" "furry" "+")
@0: Charlie is blue.[(triple1)] Charlie is cold.[(triple2 OR ((triple4) -> rule4))] Charlie is green.[(triple3)] Charlie is rough.[(triple4)] Erin is cold.[(triple5)] Erin is nice.[(triple8 OR ((triple5) -> rule2))] Erin is not furry.[(triple6)] Erin is not green.[(triple7)] Fiona is big.[(triple9)] Fiona is furry.[(triple11)] Fiona is nice.[(triple12 OR ((((triple11) -> rule5)) -> rule2))] Fiona is not blue.[(triple10)] Gary is big.[(triple13)] Gary is green.[(triple14)] Gary is rough.[(triple15)] @1: Charlie is nice.[(((triple2) -> rule2) OR ((((triple4) -> rule4)) -> rule2))] Fiona is cold.[(((triple11) -> rule5) OR ((triple11 triple12) -> rule3))] Gary is cold.[(((triple15) -> rule4))] Gary is not blue.[(((triple14 triple13) -> rule6))] @2: Gary is nice.[(((((triple15) -> rule4)) -> rule2))]
Charlie is blue.
("Charlie" "is" "blue" "+")
triple1
Charlie is cold.
("Charlie" "is" "cold" "+")
triple2
((triple4) -> (rule4 % int1))
Charlie is cold.
("Charlie" "is" "cold" "+")
int1
Charlie is green.
("Charlie" "is" "green" "+")
triple3
Charlie is rough.
("Charlie" "is" "rough" "+")
triple4
Erin is cold.
("Erin" "is" "cold" "+")
triple5
Erin is nice.
("Erin" "is" "nice" "+")
triple8
((triple5) -> (rule2 % int1))
Erin is nice.
("Erin" "is" "nice" "+")
int1
Erin is not furry.
("Erin" "is" "furry" "-")
triple6
Erin is not green.
("Erin" "is" "green" "-")
triple7
Fiona is big.
("Fiona" "is" "big" "+")
triple9
Fiona is furry.
("Fiona" "is" "furry" "+")
triple11
Fiona is nice.
("Fiona" "is" "nice" "+")
triple12
((((triple11) -> (rule5 % int2))) -> (rule2 % int1))
Fiona is nice.
("Fiona" "is" "nice" "+")
int1
Fiona is cold.
("Fiona" "is" "cold" "+")
int2
Fiona is not blue.
("Fiona" "is" "blue" "-")
triple10
Gary is big.
("Gary" "is" "big" "+")
triple13
Gary is green.
("Gary" "is" "green" "+")
triple14
Gary is rough.
("Gary" "is" "rough" "+")
triple15
Charlie is nice.
("Charlie" "is" "nice" "+")
((triple2) -> (rule2 % int1))
Charlie is nice.
("Charlie" "is" "nice" "+")
int1
((((triple4) -> (rule4 % int2))) -> (rule2 % int1))
Charlie is nice.
("Charlie" "is" "nice" "+")
int1
Charlie is cold.
("Charlie" "is" "cold" "+")
int2
Fiona is cold.
("Fiona" "is" "cold" "+")
((triple11) -> (rule5 % int1))
Fiona is cold.
("Fiona" "is" "cold" "+")
int1
((triple11 triple12) -> (rule3 % int1))
Fiona is cold.
("Fiona" "is" "cold" "+")
int1
Gary is cold.
("Gary" "is" "cold" "+")
((triple15) -> (rule4 % int1))
Gary is cold.
("Gary" "is" "cold" "+")
int1
Gary is not blue.
("Gary" "is" "blue" "-")
((triple14 triple13) -> (rule6 % int1))
Gary is not blue.
("Gary" "is" "blue" "-")
int1
Gary is nice.
("Gary" "is" "nice" "+")
((((triple15) -> (rule4 % int2))) -> (rule2 % int1))
Gary is nice.
("Gary" "is" "nice" "+")
int1
Gary is cold.
("Gary" "is" "cold" "+")
int2