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