Fiona is white. Gary is smart. If someone is white then they are blue. If someone is blue and rough then they are furry. Rough, furry people are blue. If someone is nice then they are rough. If someone is furry then they are white. If Gary is smart then Gary is white. Blue, white people are green. If someone is green then they are smart.
Fiona is white.
("Fiona" "is" "white" "+")
Gary is smart.
("Gary" "is" "smart" "+")
If someone is white then they are blue.
((("someone" "is" "white" "+")) -> ("someone" "is" "blue" "+"))
If someone is blue and rough then they are furry.
((("someone" "is" "blue" "+") ("someone" "is" "rough" "+")) -> ("someone" "is" "furry" "+"))
Rough, furry people are blue.
((("someone" "is" "rough" "+") ("someone" "is" "furry" "+")) -> ("someone" "is" "blue" "+"))
If someone is nice then they are rough.
((("someone" "is" "nice" "+")) -> ("someone" "is" "rough" "+"))
If someone is furry then they are white.
((("someone" "is" "furry" "+")) -> ("someone" "is" "white" "+"))
If Gary is smart then Gary is white.
((("Gary" "is" "smart" "+")) -> ("Gary" "is" "white" "+"))
Blue, white people are green.
((("someone" "is" "blue" "+") ("someone" "is" "white" "+")) -> ("someone" "is" "green" "+"))
If someone is green then they are smart.
((("someone" "is" "green" "+")) -> ("someone" "is" "smart" "+"))
Fiona is white.
True
1
proof
[(triple1)]
("Fiona" "is" "white" "+")
triple1
Fiona is not white.
False
1
inv-proof
[(triple1)]
("Fiona" "is" "white" "-")
triple1
Fiona is blue.
True
2
proof
[(((triple1) -> rule1))]
("Fiona" "is" "blue" "+")
((triple1) -> (rule1 % int1))
Fiona is blue.
("Fiona" "is" "blue" "+")
int1
Fiona is not blue.
False
2
inv-proof
[(((triple1) -> rule1))]
("Fiona" "is" "blue" "-")
((triple1) -> (rule1 % int1))
Fiona is blue.
("Fiona" "is" "blue" "+")
int1
Fiona is green.
True
4
proof
[(((((triple1) -> rule1) triple1) -> rule7))]
("Fiona" "is" "green" "+")
((((triple1) -> (rule1 % int2)) triple1) -> (rule7 % int1))
Fiona is green.
("Fiona" "is" "green" "+")
int1
Fiona is blue.
("Fiona" "is" "blue" "+")
int2
Fiona is not green.
False
4
inv-proof
[(((((triple1) -> rule1) triple1) -> rule7))]
("Fiona" "is" "green" "-")
((((triple1) -> (rule1 % int2)) triple1) -> (rule7 % int1))
Fiona is green.
("Fiona" "is" "green" "+")
int1
Fiona is blue.
("Fiona" "is" "blue" "+")
int2
Gary is green.
True
6
proof
[(((((((triple2) -> rule6)) -> rule1) ((triple2) -> rule6)) -> rule7))]
("Gary" "is" "green" "+")
((((((triple2) -> (rule6 % int3))) -> (rule1 % int2)) ((triple2) -> (rule6 % int3))) -> (rule7 % int1))
Gary is green.
("Gary" "is" "green" "+")
int1
Gary is blue.
("Gary" "is" "blue" "+")
int2
Gary is white.
("Gary" "is" "white" "+")
int3
Fiona is not smart.
False
5
inv-proof
[(((((((triple1) -> rule1) triple1) -> rule7)) -> rule8))]
("Fiona" "is" "smart" "-")
((((((triple1) -> (rule1 % int3)) triple1) -> (rule7 % int2))) -> (rule8 % int1))
Fiona is smart.
("Fiona" "is" "smart" "+")
int1
Fiona is green.
("Fiona" "is" "green" "+")
int2
Fiona is blue.
("Fiona" "is" "blue" "+")
int3
Fiona is not furry.
Unknown
inv-rconc
[@2: Fiona is furry.[CWA. Example of deepest failure = (rule2 <- rule4 <- FAIL)]]
("Fiona" "is" "furry" "-")
Fiona is rough.
Unknown
rconc
[@1: Fiona is rough.[CWA. Example of deepest failure = (rule4 <- FAIL)]]
("Fiona" "is" "rough" "+")
Gary is not rough.
Unknown
inv-rconc
[@1: Gary is rough.[CWA. Example of deepest failure = (rule4 <- FAIL)]]
("Gary" "is" "rough" "-")
Gary is furry.
Unknown
rconc
[@2: Gary is furry.[CWA. Example of deepest failure = (rule2 <- rule4 <- FAIL)]]
("Gary" "is" "furry" "+")
Gary is not nice.
Unknown
inv-random
[@0: Gary is nice.[CWA. Example of deepest failure = (FAIL)]]
("Gary" "is" "nice" "-")
Fiona is nice.
Unknown
random
[@0: Fiona is nice.[CWA. Example of deepest failure = (FAIL)]]
("Fiona" "is" "nice" "+")
@0: Fiona is white.[(triple1)] Gary is smart.[(triple2)] @1: Fiona is blue.[(((triple1) -> rule1))] Gary is white.[(((triple2) -> rule6))] @2: Fiona is green.[(((((triple1) -> rule1) triple1) -> rule7))] Gary is blue.[(((((triple2) -> rule6)) -> rule1))] @3: Fiona is smart.[(((((((triple1) -> rule1) triple1) -> rule7)) -> rule8))] Gary is green.[(((((((triple2) -> rule6)) -> rule1) ((triple2) -> rule6)) -> rule7))]
Fiona is white.
("Fiona" "is" "white" "+")
triple1
Gary is smart.
("Gary" "is" "smart" "+")
triple2
Fiona is blue.
("Fiona" "is" "blue" "+")
((triple1) -> (rule1 % int1))
Fiona is blue.
("Fiona" "is" "blue" "+")
int1
Gary is white.
("Gary" "is" "white" "+")
((triple2) -> (rule6 % int1))
Gary is white.
("Gary" "is" "white" "+")
int1
Fiona is green.
("Fiona" "is" "green" "+")
((((triple1) -> (rule1 % int2)) triple1) -> (rule7 % int1))
Fiona is green.
("Fiona" "is" "green" "+")
int1
Fiona is blue.
("Fiona" "is" "blue" "+")
int2
Gary is blue.
("Gary" "is" "blue" "+")
((((triple2) -> (rule6 % int2))) -> (rule1 % int1))
Gary is blue.
("Gary" "is" "blue" "+")
int1
Gary is white.
("Gary" "is" "white" "+")
int2
Fiona is smart.
("Fiona" "is" "smart" "+")
((((((triple1) -> (rule1 % int3)) triple1) -> (rule7 % int2))) -> (rule8 % int1))
Fiona is smart.
("Fiona" "is" "smart" "+")
int1
Fiona is green.
("Fiona" "is" "green" "+")
int2
Fiona is blue.
("Fiona" "is" "blue" "+")
int3
Gary is green.
("Gary" "is" "green" "+")
((((((triple2) -> (rule6 % int3))) -> (rule1 % int2)) ((triple2) -> (rule6 % int3))) -> (rule7 % int1))
Gary is green.
("Gary" "is" "green" "+")
int1
Gary is blue.
("Gary" "is" "blue" "+")
int2
Gary is white.
("Gary" "is" "white" "+")
int3