Fiona is not big. Fiona is blue. Fiona is cold. Fiona is furry. Fiona is red. Fiona is white. Fiona is young. Gary is blue. Gary is cold. Gary is not furry. Gary is not red. Harry is big. Harry is cold. Harry is furry. Harry is red. Harry is young. All young, blue people are red. If someone is blue and white then they are red. If someone is cold and not red then they are not furry.
Fiona is not big.
("Fiona" "is" "big" "-")
Fiona is blue.
("Fiona" "is" "blue" "+")
Fiona is cold.
("Fiona" "is" "cold" "+")
Fiona is furry.
("Fiona" "is" "furry" "+")
Fiona is red.
("Fiona" "is" "red" "+")
Fiona is white.
("Fiona" "is" "white" "+")
Fiona is young.
("Fiona" "is" "young" "+")
Gary is blue.
("Gary" "is" "blue" "+")
Gary is cold.
("Gary" "is" "cold" "+")
Gary is not furry.
("Gary" "is" "furry" "-")
Gary is not red.
("Gary" "is" "red" "-")
Harry is big.
("Harry" "is" "big" "+")
Harry is cold.
("Harry" "is" "cold" "+")
Harry is furry.
("Harry" "is" "furry" "+")
Harry is red.
("Harry" "is" "red" "+")
Harry is young.
("Harry" "is" "young" "+")
All young, blue people are red.
((("someone" "is" "young" "+") ("someone" "is" "blue" "+")) -> ("someone" "is" "red" "+"))
If someone is blue and white then they are red.
((("someone" "is" "blue" "+") ("someone" "is" "white" "+")) -> ("someone" "is" "red" "+"))
If someone is cold and not red then they are not furry.
((("someone" "is" "cold" "+") ("someone" "is" "red" "~")) -> ("someone" "is" "furry" "-"))
Harry is young.
True
1
proof
[(triple16)]
("Harry" "is" "young" "+")
triple16
Fiona is not red.
False
1
inv-proof
[(triple5 OR ((triple2 triple6) -> rule2) OR ((triple7 triple2) -> rule1))]
("Fiona" "is" "red" "-")
triple5
((triple2 triple6) -> (rule2 % int1))
Fiona is red.
("Fiona" "is" "red" "+")
int1
((triple7 triple2) -> (rule1 % int1))
Fiona is red.
("Fiona" "is" "red" "+")
int1
Harry is not blue.
Unknown
inv-random
[@0: Harry is blue.[CWA. Example of deepest failure = (FAIL)]]
("Harry" "is" "blue" "-")
Harry is white.
Unknown
random
[@0: Harry is white.[CWA. Example of deepest failure = (FAIL)]]
("Harry" "is" "white" "+")
@0: Fiona is blue.[(triple2)] Fiona is cold.[(triple3)] Fiona is furry.[(triple4)] Fiona is not big.[(triple1)] Fiona is red.[(triple5 OR ((triple2 triple6) -> rule2) OR ((triple7 triple2) -> rule1))] Fiona is white.[(triple6)] Fiona is young.[(triple7)] Gary is blue.[(triple8)] Gary is cold.[(triple9)] Gary is not furry.[(triple10 OR ((triple9 triple11) -> rule3))] Gary is not red.[(triple11)] Harry is big.[(triple12)] Harry is cold.[(triple13)] Harry is furry.[(triple14)] Harry is red.[(triple15)] Harry is young.[(triple16)]
Fiona is blue.
("Fiona" "is" "blue" "+")
triple2
Fiona is cold.
("Fiona" "is" "cold" "+")
triple3
Fiona is furry.
("Fiona" "is" "furry" "+")
triple4
Fiona is not big.
("Fiona" "is" "big" "-")
triple1
Fiona is red.
("Fiona" "is" "red" "+")
triple5
((triple2 triple6) -> (rule2 % int1))
Fiona is red.
("Fiona" "is" "red" "+")
int1
((triple7 triple2) -> (rule1 % int1))
Fiona is red.
("Fiona" "is" "red" "+")
int1
Fiona is white.
("Fiona" "is" "white" "+")
triple6
Fiona is young.
("Fiona" "is" "young" "+")
triple7
Gary is blue.
("Gary" "is" "blue" "+")
triple8
Gary is cold.
("Gary" "is" "cold" "+")
triple9
Gary is not furry.
("Gary" "is" "furry" "-")
triple10
((triple9 triple11) -> (rule3 % int1))
Gary is not furry.
("Gary" "is" "furry" "-")
int1
Gary is not red.
("Gary" "is" "red" "-")
triple11
Harry is big.
("Harry" "is" "big" "+")
triple12
Harry is cold.
("Harry" "is" "cold" "+")
triple13
Harry is furry.
("Harry" "is" "furry" "+")
triple14
Harry is red.
("Harry" "is" "red" "+")
triple15
Harry is young.
("Harry" "is" "young" "+")
triple16