Charlie is not big. Charlie is cold. Charlie is green. Charlie is round. Charlie is young. Gary is big. Harry is cold. If Charlie is big then Charlie is white. If Harry is not big then Harry is green. Green, round people are not nice. If someone is big and not green then they are round. All green people are round. If someone is big and not nice then they are white. If someone is nice and not round then they are not white. If someone is cold and not white then they are young.
Charlie is not big.
("Charlie" "is" "big" "-")
Charlie is cold.
("Charlie" "is" "cold" "+")
Charlie is green.
("Charlie" "is" "green" "+")
Charlie is round.
("Charlie" "is" "round" "+")
Charlie is young.
("Charlie" "is" "young" "+")
Gary is big.
("Gary" "is" "big" "+")
Harry is cold.
("Harry" "is" "cold" "+")
If Charlie is big then Charlie is white.
((("Charlie" "is" "big" "+")) -> ("Charlie" "is" "white" "+"))
If Harry is not big then Harry is green.
((("Harry" "is" "big" "~")) -> ("Harry" "is" "green" "+"))
Green, round people are not nice.
((("someone" "is" "green" "+") ("someone" "is" "round" "+")) -> ("someone" "is" "nice" "-"))
If someone is big and not green then they are round.
((("someone" "is" "big" "+") ("someone" "is" "green" "~")) -> ("someone" "is" "round" "+"))
All green people are round.
((("someone" "is" "green" "+")) -> ("someone" "is" "round" "+"))
If someone is big and not nice then they are white.
((("someone" "is" "big" "+") ("someone" "is" "nice" "~")) -> ("someone" "is" "white" "+"))
If someone is nice and not round then they are not white.
((("someone" "is" "nice" "+") ("someone" "is" "round" "~")) -> ("someone" "is" "white" "-"))
If someone is cold and not white then they are young.
((("someone" "is" "cold" "+") ("someone" "is" "white" "~")) -> ("someone" "is" "young" "+"))
Gary is big.
True
1
proof
[(triple6)]
("Gary" "is" "big" "+")
triple6
Charlie is not cold.
False
1
inv-proof
[(triple2)]
("Charlie" "is" "cold" "-")
triple2
Charlie is not nice.
True
3
proof
[(((triple3 triple4) -> rule3) OR ((triple3 ((triple3) -> rule5)) -> rule3))]
("Charlie" "is" "nice" "-")
((triple3 triple4) -> (rule3 % int1))
Charlie is not nice.
("Charlie" "is" "nice" "-")
int1
((triple3 ((triple3) -> (rule5 % int2))) -> (rule3 % int1))
Charlie is not nice.
("Charlie" "is" "nice" "-")
int1
Charlie is round.
("Charlie" "is" "round" "+")
int2
Charlie is nice.
False
3
inv-proof
[(((triple3 triple4) -> rule3) OR ((triple3 ((triple3) -> rule5)) -> rule3))]
("Charlie" "is" "nice" "+")
((triple3 triple4) -> (rule3 % int1))
Charlie is not nice.
("Charlie" "is" "nice" "-")
int1
((triple3 ((triple3) -> (rule5 % int2))) -> (rule3 % int1))
Charlie is not nice.
("Charlie" "is" "nice" "-")
int1
Charlie is round.
("Charlie" "is" "round" "+")
int2
Gary is not young.
Unknown
inv-rconc
[@1: Gary is young.[CWA. Example of deepest failure = (rule8 <- FAIL)]]
("Gary" "is" "young" "-")
Charlie is white.
Unknown
rconc
[@1: Charlie is white.[CWA. Example of deepest failure = (rule1 <- FAIL)]]
("Charlie" "is" "white" "+")
Harry is not nice.
Unknown
inv-random
[@0: Harry is nice.[CWA. Example of deepest failure = (FAIL)]]
("Harry" "is" "nice" "-")
Harry is big.
Unknown
random
[@0: Harry is big.[CWA. Example of deepest failure = (FAIL)]]
("Harry" "is" "big" "+")
@0: Charlie is cold.[(triple2)] Charlie is green.[(triple3)] Charlie is not big.[(triple1)] Charlie is round.[(triple4 OR ((triple3) -> rule5))] Charlie is young.[(triple5)] Gary is big.[(triple6)] Harry is cold.[(triple7)] @1: Charlie is not nice.[(((triple3 triple4) -> rule3) OR ((triple3 ((triple3) -> rule5)) -> rule3))]
Charlie is cold.
("Charlie" "is" "cold" "+")
triple2
Charlie is green.
("Charlie" "is" "green" "+")
triple3
Charlie is not big.
("Charlie" "is" "big" "-")
triple1
Charlie is round.
("Charlie" "is" "round" "+")
triple4
((triple3) -> (rule5 % int1))
Charlie is round.
("Charlie" "is" "round" "+")
int1
Charlie is young.
("Charlie" "is" "young" "+")
triple5
Gary is big.
("Gary" "is" "big" "+")
triple6
Harry is cold.
("Harry" "is" "cold" "+")
triple7
Charlie is not nice.
("Charlie" "is" "nice" "-")
((triple3 triple4) -> (rule3 % int1))
Charlie is not nice.
("Charlie" "is" "nice" "-")
int1
((triple3 ((triple3) -> (rule5 % int2))) -> (rule3 % int1))
Charlie is not nice.
("Charlie" "is" "nice" "-")
int1
Charlie is round.
("Charlie" "is" "round" "+")
int2