Fiona is big. Gary is smart. If something is round then it is smart. If something is nice then it is blue. Big things are cold. All cold things are nice. Cold, rough things are round. If Fiona is nice and Fiona is round then Fiona is rough.
Fiona is big.
("Fiona" "is" "big" "+")
Gary is smart.
("Gary" "is" "smart" "+")
If something is round then it is smart.
((("something" "is" "round" "+")) -> ("something" "is" "smart" "+"))
If something is nice then it is blue.
((("something" "is" "nice" "+")) -> ("something" "is" "blue" "+"))
Big things are cold.
((("something" "is" "big" "+")) -> ("something" "is" "cold" "+"))
All cold things are nice.
((("something" "is" "cold" "+")) -> ("something" "is" "nice" "+"))
Cold, rough things are round.
((("something" "is" "cold" "+") ("something" "is" "rough" "+")) -> ("something" "is" "round" "+"))
If Fiona is nice and Fiona is round then Fiona is rough.
((("Fiona" "is" "nice" "+") ("Fiona" "is" "round" "+")) -> ("Fiona" "is" "rough" "+"))
Fiona is big.
True
1
proof
[(triple1)]
("Fiona" "is" "big" "+")
triple1
Gary is not smart.
False
1
inv-proof
[(triple2)]
("Gary" "is" "smart" "-")
triple2
Fiona is cold.
True
2
proof
[(((triple1) -> rule3))]
("Fiona" "is" "cold" "+")
((triple1) -> (rule3 % int1))
Fiona is cold.
("Fiona" "is" "cold" "+")
int1
Fiona is not cold.
False
2
inv-proof
[(((triple1) -> rule3))]
("Fiona" "is" "cold" "-")
((triple1) -> (rule3 % int1))
Fiona is cold.
("Fiona" "is" "cold" "+")
int1
Fiona is nice.
True
3
proof
[(((((triple1) -> rule3)) -> rule4))]
("Fiona" "is" "nice" "+")
((((triple1) -> (rule3 % int2))) -> (rule4 % int1))
Fiona is nice.
("Fiona" "is" "nice" "+")
int1
Fiona is cold.
("Fiona" "is" "cold" "+")
int2
Fiona is not nice.
False
3
inv-proof
[(((((triple1) -> rule3)) -> rule4))]
("Fiona" "is" "nice" "-")
((((triple1) -> (rule3 % int2))) -> (rule4 % int1))
Fiona is nice.
("Fiona" "is" "nice" "+")
int1
Fiona is cold.
("Fiona" "is" "cold" "+")
int2
Fiona is blue.
True
4
proof
[(((((((triple1) -> rule3)) -> rule4)) -> rule2))]
("Fiona" "is" "blue" "+")
((((((triple1) -> (rule3 % int3))) -> (rule4 % int2))) -> (rule2 % int1))
Fiona is blue.
("Fiona" "is" "blue" "+")
int1
Fiona is nice.
("Fiona" "is" "nice" "+")
int2
Fiona is cold.
("Fiona" "is" "cold" "+")
int3
Fiona is not blue.
False
4
inv-proof
[(((((((triple1) -> rule3)) -> rule4)) -> rule2))]
("Fiona" "is" "blue" "-")
((((((triple1) -> (rule3 % int3))) -> (rule4 % int2))) -> (rule2 % int1))
Fiona is blue.
("Fiona" "is" "blue" "+")
int1
Fiona is nice.
("Fiona" "is" "nice" "+")
int2
Fiona is cold.
("Fiona" "is" "cold" "+")
int3
Fiona is not round.
Unknown
inv-rconc
[@2: Fiona is round.[CWA. Example of deepest failure = (rule5 <- rule6 <- FAIL)]]
("Fiona" "is" "round" "-")
Fiona is rough.
Unknown
rconc
[@2: Fiona is rough.[CWA. Example of deepest failure = (rule6 <- rule5 <- FAIL)]]
("Fiona" "is" "rough" "+")
Gary is not blue.
Unknown
inv-rconc
[@3: Gary is blue.[CWA. Example of deepest failure = (rule2 <- rule4 <- rule3 <- FAIL)]]
("Gary" "is" "blue" "-")
Gary is nice.
Unknown
rconc
[@2: Gary is nice.[CWA. Example of deepest failure = (rule4 <- rule3 <- FAIL)]]
("Gary" "is" "nice" "+")
Gary is not rough.
Unknown
inv-random
[@0: Gary is rough.[CWA. Example of deepest failure = (FAIL)]]
("Gary" "is" "rough" "-")
Gary is big.
Unknown
random
[@0: Gary is big.[CWA. Example of deepest failure = (FAIL)]]
("Gary" "is" "big" "+")
@0: Fiona is big.[(triple1)] Gary is smart.[(triple2)] @1: Fiona is cold.[(((triple1) -> rule3))] @2: Fiona is nice.[(((((triple1) -> rule3)) -> rule4))] @3: Fiona is blue.[(((((((triple1) -> rule3)) -> rule4)) -> rule2))]
Fiona is big.
("Fiona" "is" "big" "+")
triple1
Gary is smart.
("Gary" "is" "smart" "+")
triple2
Fiona is cold.
("Fiona" "is" "cold" "+")
((triple1) -> (rule3 % int1))
Fiona is cold.
("Fiona" "is" "cold" "+")
int1
Fiona is nice.
("Fiona" "is" "nice" "+")
((((triple1) -> (rule3 % int2))) -> (rule4 % int1))
Fiona is nice.
("Fiona" "is" "nice" "+")
int1
Fiona is cold.
("Fiona" "is" "cold" "+")
int2
Fiona is blue.
("Fiona" "is" "blue" "+")
((((((triple1) -> (rule3 % int3))) -> (rule4 % int2))) -> (rule2 % int1))
Fiona is blue.
("Fiona" "is" "blue" "+")
int1
Fiona is nice.
("Fiona" "is" "nice" "+")
int2
Fiona is cold.
("Fiona" "is" "cold" "+")
int3