Anne is big. Anne is blue. Anne is furry. Anne is white. Dave is big. Dave is blue. Dave is cold. Dave is furry. Fiona is blue. Gary is big. Gary is blue. Gary is furry. If someone is white then they are furry. Big, furry people are cold. If someone is blue then they are smart. All red, furry people are big. All smart people are cold. All white people are big.
Anne is big.
("Anne" "is" "big" "+")
Anne is blue.
("Anne" "is" "blue" "+")
Anne is furry.
("Anne" "is" "furry" "+")
Anne is white.
("Anne" "is" "white" "+")
Dave is big.
("Dave" "is" "big" "+")
Dave is blue.
("Dave" "is" "blue" "+")
Dave is cold.
("Dave" "is" "cold" "+")
Dave is furry.
("Dave" "is" "furry" "+")
Fiona is blue.
("Fiona" "is" "blue" "+")
Gary is big.
("Gary" "is" "big" "+")
Gary is blue.
("Gary" "is" "blue" "+")
Gary is furry.
("Gary" "is" "furry" "+")
If someone is white then they are furry.
((("someone" "is" "white" "+")) -> ("someone" "is" "furry" "+"))
Big, furry people are cold.
((("someone" "is" "big" "+") ("someone" "is" "furry" "+")) -> ("someone" "is" "cold" "+"))
If someone is blue then they are smart.
((("someone" "is" "blue" "+")) -> ("someone" "is" "smart" "+"))
All red, furry people are big.
((("someone" "is" "red" "+") ("someone" "is" "furry" "+")) -> ("someone" "is" "big" "+"))
All smart people are cold.
((("someone" "is" "smart" "+")) -> ("someone" "is" "cold" "+"))
All white people are big.
((("someone" "is" "white" "+")) -> ("someone" "is" "big" "+"))
Gary is blue.
True
1
proof
[(triple11)]
("Gary" "is" "blue" "+")
triple11
Gary is not big.
False
1
inv-proof
[(triple10)]
("Gary" "is" "big" "-")
triple10
Anne is smart.
True
2
proof
[(((triple2) -> rule3))]
("Anne" "is" "smart" "+")
((triple2) -> (rule3 % int1))
Anne is smart.
("Anne" "is" "smart" "+")
int1
Fiona is not smart.
False
2
inv-proof
[(((triple9) -> rule3))]
("Fiona" "is" "smart" "-")
((triple9) -> (rule3 % int1))
Fiona is smart.
("Fiona" "is" "smart" "+")
int1
Fiona is cold.
True
3
proof
[(((((triple9) -> rule3)) -> rule5))]
("Fiona" "is" "cold" "+")
((((triple9) -> (rule3 % int2))) -> (rule5 % int1))
Fiona is cold.
("Fiona" "is" "cold" "+")
int1
Fiona is smart.
("Fiona" "is" "smart" "+")
int2
Fiona is not cold.
False
3
inv-proof
[(((((triple9) -> rule3)) -> rule5))]
("Fiona" "is" "cold" "-")
((((triple9) -> (rule3 % int2))) -> (rule5 % int1))
Fiona is cold.
("Fiona" "is" "cold" "+")
int1
Fiona is smart.
("Fiona" "is" "smart" "+")
int2
Fiona is not big.
Unknown
inv-rconc
[@1: Fiona is big.[CWA. Example of deepest failure = (rule4 <- FAIL)]]
("Fiona" "is" "big" "-")
Fiona is furry.
Unknown
rconc
[@1: Fiona is furry.[CWA. Example of deepest failure = (rule1 <- FAIL)]]
("Fiona" "is" "furry" "+")
Gary is not white.
Unknown
inv-random
[@0: Gary is white.[CWA. Example of deepest failure = (FAIL)]]
("Gary" "is" "white" "-")
Anne is red.
Unknown
random
[@0: Anne is red.[CWA. Example of deepest failure = (FAIL)]]
("Anne" "is" "red" "+")
Fiona is not red.
Unknown
inv-random
[@0: Fiona is red.[CWA. Example of deepest failure = (FAIL)]]
("Fiona" "is" "red" "-")
Dave is red.
Unknown
random
[@0: Dave is red.[CWA. Example of deepest failure = (FAIL)]]
("Dave" "is" "red" "+")
@0: Anne is big.[(triple1 OR ((triple4) -> rule6))] Anne is blue.[(triple2)] Anne is furry.[(triple3 OR ((triple4) -> rule1))] Anne is white.[(triple4)] Dave is big.[(triple5)] Dave is blue.[(triple6)] Dave is cold.[(triple7 OR ((triple5 triple8) -> rule2) OR ((((triple6) -> rule3)) -> rule5))] Dave is furry.[(triple8)] Fiona is blue.[(triple9)] Gary is big.[(triple10)] Gary is blue.[(triple11)] Gary is furry.[(triple12)] @1: Anne is cold.[(((triple1 triple3) -> rule2) OR ((((triple2) -> rule3)) -> rule5) OR ((triple1 ((triple4) -> rule1)) -> rule2) OR ((((triple4) -> rule6) triple3) -> rule2) OR ((((triple4) -> rule6) ((triple4) -> rule1)) -> rule2))] Anne is smart.[(((triple2) -> rule3))] Dave is smart.[(((triple6) -> rule3))] Fiona is smart.[(((triple9) -> rule3))] Gary is cold.[(((triple10 triple12) -> rule2) OR ((((triple11) -> rule3)) -> rule5))] Gary is smart.[(((triple11) -> rule3))] @2: Fiona is cold.[(((((triple9) -> rule3)) -> rule5))]
Anne is big.
("Anne" "is" "big" "+")
triple1
((triple4) -> (rule6 % int1))
Anne is big.
("Anne" "is" "big" "+")
int1
Anne is blue.
("Anne" "is" "blue" "+")
triple2
Anne is furry.
("Anne" "is" "furry" "+")
triple3
((triple4) -> (rule1 % int1))
Anne is furry.
("Anne" "is" "furry" "+")
int1
Anne is white.
("Anne" "is" "white" "+")
triple4
Dave is big.
("Dave" "is" "big" "+")
triple5
Dave is blue.
("Dave" "is" "blue" "+")
triple6
Dave is cold.
("Dave" "is" "cold" "+")
triple7
((triple5 triple8) -> (rule2 % int1))
Dave is cold.
("Dave" "is" "cold" "+")
int1
((((triple6) -> (rule3 % int2))) -> (rule5 % int1))
Dave is cold.
("Dave" "is" "cold" "+")
int1
Dave is smart.
("Dave" "is" "smart" "+")
int2
Dave is furry.
("Dave" "is" "furry" "+")
triple8
Fiona is blue.
("Fiona" "is" "blue" "+")
triple9
Gary is big.
("Gary" "is" "big" "+")
triple10
Gary is blue.
("Gary" "is" "blue" "+")
triple11
Gary is furry.
("Gary" "is" "furry" "+")
triple12
Anne is cold.
("Anne" "is" "cold" "+")
((triple1 triple3) -> (rule2 % int1))
Anne is cold.
("Anne" "is" "cold" "+")
int1
((((triple2) -> (rule3 % int2))) -> (rule5 % int1))
Anne is cold.
("Anne" "is" "cold" "+")
int1
Anne is smart.
("Anne" "is" "smart" "+")
int2
((triple1 ((triple4) -> (rule1 % int2))) -> (rule2 % int1))
Anne is cold.
("Anne" "is" "cold" "+")
int1
Anne is furry.
("Anne" "is" "furry" "+")
int2
((((triple4) -> (rule6 % int2)) triple3) -> (rule2 % int1))
Anne is cold.
("Anne" "is" "cold" "+")
int1
Anne is big.
("Anne" "is" "big" "+")
int2
((((triple4) -> (rule6 % int3)) ((triple4) -> (rule1 % int2))) -> (rule2 % int1))
Anne is cold.
("Anne" "is" "cold" "+")
int1
Anne is furry.
("Anne" "is" "furry" "+")
int2
Anne is big.
("Anne" "is" "big" "+")
int3
Anne is smart.
("Anne" "is" "smart" "+")
((triple2) -> (rule3 % int1))
Anne is smart.
("Anne" "is" "smart" "+")
int1
Dave is smart.
("Dave" "is" "smart" "+")
((triple6) -> (rule3 % int1))
Dave is smart.
("Dave" "is" "smart" "+")
int1
Fiona is smart.
("Fiona" "is" "smart" "+")
((triple9) -> (rule3 % int1))
Fiona is smart.
("Fiona" "is" "smart" "+")
int1
Gary is cold.
("Gary" "is" "cold" "+")
((triple10 triple12) -> (rule2 % int1))
Gary is cold.
("Gary" "is" "cold" "+")
int1
((((triple11) -> (rule3 % int2))) -> (rule5 % int1))
Gary is cold.
("Gary" "is" "cold" "+")
int1
Gary is smart.
("Gary" "is" "smart" "+")
int2
Gary is smart.
("Gary" "is" "smart" "+")
((triple11) -> (rule3 % int1))
Gary is smart.
("Gary" "is" "smart" "+")
int1
Fiona is cold.
("Fiona" "is" "cold" "+")
((((triple9) -> (rule3 % int2))) -> (rule5 % int1))
Fiona is cold.
("Fiona" "is" "cold" "+")
int1
Fiona is smart.
("Fiona" "is" "smart" "+")
int2