Fiona is blue. Fiona is cold. Fiona is round. Big people are white. All white people are round. If someone is blue and furry then they are big. If someone is furry and round then they are cold. Cold people are big. All white people are blue. If someone is round and furry then they are white. All blue, furry people are big.
Fiona is blue.
("Fiona" "is" "blue" "+")
Fiona is cold.
("Fiona" "is" "cold" "+")
Fiona is round.
("Fiona" "is" "round" "+")
Big people are white.
((("someone" "is" "big" "+")) -> ("someone" "is" "white" "+"))
All white people are round.
((("someone" "is" "white" "+")) -> ("someone" "is" "round" "+"))
If someone is blue and furry then they are big.
((("someone" "is" "blue" "+") ("someone" "is" "furry" "+")) -> ("someone" "is" "big" "+"))
If someone is furry and round then they are cold.
((("someone" "is" "furry" "+") ("someone" "is" "round" "+")) -> ("someone" "is" "cold" "+"))
Cold people are big.
((("someone" "is" "cold" "+")) -> ("someone" "is" "big" "+"))
All white people are blue.
((("someone" "is" "white" "+")) -> ("someone" "is" "blue" "+"))
If someone is round and furry then they are white.
((("someone" "is" "round" "+") ("someone" "is" "furry" "+")) -> ("someone" "is" "white" "+"))
All blue, furry people are big.
((("someone" "is" "blue" "+") ("someone" "is" "furry" "+")) -> ("someone" "is" "big" "+"))
Fiona is blue.
True
1
proof
[(triple1 OR ((((((triple2) -> rule5)) -> rule1)) -> rule6))]
("Fiona" "is" "blue" "+")
triple1
((((((triple2) -> (rule5 % int3))) -> (rule1 % int2))) -> (rule6 % int1))
Fiona is blue.
("Fiona" "is" "blue" "+")
int1
Fiona is white.
("Fiona" "is" "white" "+")
int2
Fiona is big.
("Fiona" "is" "big" "+")
int3
Fiona is not round.
False
1
inv-proof
[(triple3 OR ((((((triple2) -> rule5)) -> rule1)) -> rule2))]
("Fiona" "is" "round" "-")
triple3
((((((triple2) -> (rule5 % int3))) -> (rule1 % int2))) -> (rule2 % int1))
Fiona is round.
("Fiona" "is" "round" "+")
int1
Fiona is white.
("Fiona" "is" "white" "+")
int2
Fiona is big.
("Fiona" "is" "big" "+")
int3
Fiona is big.
True
2
proof
[(((triple2) -> rule5))]
("Fiona" "is" "big" "+")
((triple2) -> (rule5 % int1))
Fiona is big.
("Fiona" "is" "big" "+")
int1
Fiona is not big.
False
2
inv-proof
[(((triple2) -> rule5))]
("Fiona" "is" "big" "-")
((triple2) -> (rule5 % int1))
Fiona is big.
("Fiona" "is" "big" "+")
int1
Fiona is not furry.
Unknown
inv-random
[@0: Fiona is furry.[CWA. Example of deepest failure = (FAIL)]]
("Fiona" "is" "furry" "-")
Fiona is red.
Unknown
random
[@0: Fiona is red.[CWA. Example of deepest failure = (FAIL)]]
("Fiona" "is" "red" "+")
@0: Fiona is blue.[(triple1 OR ((((((triple2) -> rule5)) -> rule1)) -> rule6))] Fiona is cold.[(triple2)] Fiona is round.[(triple3 OR ((((((triple2) -> rule5)) -> rule1)) -> rule2))] @1: Fiona is big.[(((triple2) -> rule5))] @2: Fiona is white.[(((((triple2) -> rule5)) -> rule1))]
Fiona is blue.
("Fiona" "is" "blue" "+")
triple1
((((((triple2) -> (rule5 % int3))) -> (rule1 % int2))) -> (rule6 % int1))
Fiona is blue.
("Fiona" "is" "blue" "+")
int1
Fiona is white.
("Fiona" "is" "white" "+")
int2
Fiona is big.
("Fiona" "is" "big" "+")
int3
Fiona is cold.
("Fiona" "is" "cold" "+")
triple2
Fiona is round.
("Fiona" "is" "round" "+")
triple3
((((((triple2) -> (rule5 % int3))) -> (rule1 % int2))) -> (rule2 % int1))
Fiona is round.
("Fiona" "is" "round" "+")
int1
Fiona is white.
("Fiona" "is" "white" "+")
int2
Fiona is big.
("Fiona" "is" "big" "+")
int3
Fiona is big.
("Fiona" "is" "big" "+")
((triple2) -> (rule5 % int1))
Fiona is big.
("Fiona" "is" "big" "+")
int1
Fiona is white.
("Fiona" "is" "white" "+")
((((triple2) -> (rule5 % int2))) -> (rule1 % int1))
Fiona is white.
("Fiona" "is" "white" "+")
int1
Fiona is big.
("Fiona" "is" "big" "+")
int2