Fiona is big. Fiona is blue. Fiona is furry. Fiona is nice. Fiona is not red. Fiona is round. Fiona is smart. Gary is not blue. Gary is red. Gary is round. If someone is smart and blue then they are big. If Gary is smart and Gary is not furry then Gary is red. If someone is round and not smart then they are nice. Round people are nice. If someone is big and not red then they are nice. If someone is furry and blue then they are nice.
Fiona is big.
("Fiona" "is" "big" "+")
Fiona is blue.
("Fiona" "is" "blue" "+")
Fiona is furry.
("Fiona" "is" "furry" "+")
Fiona is nice.
("Fiona" "is" "nice" "+")
Fiona is not red.
("Fiona" "is" "red" "-")
Fiona is round.
("Fiona" "is" "round" "+")
Fiona is smart.
("Fiona" "is" "smart" "+")
Gary is not blue.
("Gary" "is" "blue" "-")
Gary is red.
("Gary" "is" "red" "+")
Gary is round.
("Gary" "is" "round" "+")
If someone is smart and blue then they are big.
((("someone" "is" "smart" "+") ("someone" "is" "blue" "+")) -> ("someone" "is" "big" "+"))
If Gary is smart and Gary is not furry then Gary is red.
((("Gary" "is" "smart" "+") ("Gary" "is" "furry" "~")) -> ("Gary" "is" "red" "+"))
If someone is round and not smart then they are nice.
((("someone" "is" "round" "+") ("someone" "is" "smart" "~")) -> ("someone" "is" "nice" "+"))
Round people are nice.
((("someone" "is" "round" "+")) -> ("someone" "is" "nice" "+"))
If someone is big and not red then they are nice.
((("someone" "is" "big" "+") ("someone" "is" "red" "~")) -> ("someone" "is" "nice" "+"))
If someone is furry and blue then they are nice.
((("someone" "is" "furry" "+") ("someone" "is" "blue" "+")) -> ("someone" "is" "nice" "+"))
Fiona is not red.
True
1
proof
[(triple5)]
("Fiona" "is" "red" "-")
triple5
Fiona is not nice.
False
1
inv-proof
[(triple4 OR ((triple6) -> rule4) OR ((triple1 triple5) -> rule5) OR ((triple3 triple2) -> rule6) OR ((((triple7 triple2) -> rule1) triple5) -> rule5))]
("Fiona" "is" "nice" "-")
triple4
((triple6) -> (rule4 % int1))
Fiona is nice.
("Fiona" "is" "nice" "+")
int1
((triple1 triple5) -> (rule5 % int1))
Fiona is nice.
("Fiona" "is" "nice" "+")
int1
((triple3 triple2) -> (rule6 % int1))
Fiona is nice.
("Fiona" "is" "nice" "+")
int1
((((triple7 triple2) -> (rule1 % int2)) triple5) -> (rule5 % int1))
Fiona is nice.
("Fiona" "is" "nice" "+")
int1
Fiona is big.
("Fiona" "is" "big" "+")
int2
Gary is nice.
True
2
proof
[(((triple10) -> rule4))]
("Gary" "is" "nice" "+")
((triple10) -> (rule4 % int1))
Gary is nice.
("Gary" "is" "nice" "+")
int1
Gary is not nice.
False
2
inv-proof
[(((triple10) -> rule4))]
("Gary" "is" "nice" "-")
((triple10) -> (rule4 % int1))
Gary is nice.
("Gary" "is" "nice" "+")
int1
Gary is not big.
Unknown
inv-rconc
[@1: Gary is big.[CWA. Example of deepest failure = (rule1 <- FAIL)]]
("Gary" "is" "big" "-")
Gary is furry.
Unknown
random
[@0: Gary is furry.[CWA. Example of deepest failure = (FAIL)]]
("Gary" "is" "furry" "+")
@0: Fiona is big.[(triple1 OR ((triple7 triple2) -> rule1))] Fiona is blue.[(triple2)] Fiona is furry.[(triple3)] Fiona is nice.[(triple4 OR ((triple6) -> rule4) OR ((triple1 triple5) -> rule5) OR ((triple3 triple2) -> rule6) OR ((((triple7 triple2) -> rule1) triple5) -> rule5))] Fiona is not red.[(triple5)] Fiona is round.[(triple6)] Fiona is smart.[(triple7)] Gary is not blue.[(triple8)] Gary is red.[(triple9)] Gary is round.[(triple10)] @1: Gary is nice.[(((triple10) -> rule4))]
Fiona is big.
("Fiona" "is" "big" "+")
triple1
((triple7 triple2) -> (rule1 % int1))
Fiona is big.
("Fiona" "is" "big" "+")
int1
Fiona is blue.
("Fiona" "is" "blue" "+")
triple2
Fiona is furry.
("Fiona" "is" "furry" "+")
triple3
Fiona is nice.
("Fiona" "is" "nice" "+")
triple4
((triple6) -> (rule4 % int1))
Fiona is nice.
("Fiona" "is" "nice" "+")
int1
((triple1 triple5) -> (rule5 % int1))
Fiona is nice.
("Fiona" "is" "nice" "+")
int1
((triple3 triple2) -> (rule6 % int1))
Fiona is nice.
("Fiona" "is" "nice" "+")
int1
((((triple7 triple2) -> (rule1 % int2)) triple5) -> (rule5 % int1))
Fiona is nice.
("Fiona" "is" "nice" "+")
int1
Fiona is big.
("Fiona" "is" "big" "+")
int2
Fiona is not red.
("Fiona" "is" "red" "-")
triple5
Fiona is round.
("Fiona" "is" "round" "+")
triple6
Fiona is smart.
("Fiona" "is" "smart" "+")
triple7
Gary is not blue.
("Gary" "is" "blue" "-")
triple8
Gary is red.
("Gary" "is" "red" "+")
triple9
Gary is round.
("Gary" "is" "round" "+")
triple10
Gary is nice.
("Gary" "is" "nice" "+")
((triple10) -> (rule4 % int1))
Gary is nice.
("Gary" "is" "nice" "+")
int1