Dave is blue. Dave is cold. Dave is furry. Dave is green. Dave is red. Dave is white. Dave is young. Erin is not furry. Erin is red. Erin is not white. Fiona is furry. Fiona is not green. Fiona is not red. Gary is blue. Gary is white. Gary is not young. If something is red and not white then it is not furry. If something is white and not blue then it is not furry. If something is red and not young then it is not furry. Cold, red things are green. If Fiona is not white then Fiona is green. If Dave is furry and Dave is not white then Dave is green. Cold, blue things are red. If Gary is not young then Gary is cold.
Dave is blue.
("Dave" "is" "blue" "+")
Dave is cold.
("Dave" "is" "cold" "+")
Dave is furry.
("Dave" "is" "furry" "+")
Dave is green.
("Dave" "is" "green" "+")
Dave is red.
("Dave" "is" "red" "+")
Dave is white.
("Dave" "is" "white" "+")
Dave is young.
("Dave" "is" "young" "+")
Erin is not furry.
("Erin" "is" "furry" "-")
Erin is red.
("Erin" "is" "red" "+")
Erin is not white.
("Erin" "is" "white" "-")
Fiona is furry.
("Fiona" "is" "furry" "+")
Fiona is not green.
("Fiona" "is" "green" "-")
Fiona is not red.
("Fiona" "is" "red" "-")
Gary is blue.
("Gary" "is" "blue" "+")
Gary is white.
("Gary" "is" "white" "+")
Gary is not young.
("Gary" "is" "young" "-")
If something is red and not white then it is not furry.
((("something" "is" "red" "+") ("something" "is" "white" "~")) -> ("something" "is" "furry" "-"))
If something is white and not blue then it is not furry.
((("something" "is" "white" "+") ("something" "is" "blue" "~")) -> ("something" "is" "furry" "-"))
If something is red and not young then it is not furry.
((("something" "is" "red" "+") ("something" "is" "young" "~")) -> ("something" "is" "furry" "-"))
Cold, red things are green.
((("something" "is" "cold" "+") ("something" "is" "red" "+")) -> ("something" "is" "green" "+"))
If Fiona is not white then Fiona is green.
((("Fiona" "is" "white" "~")) -> ("Fiona" "is" "green" "+"))
If Dave is furry and Dave is not white then Dave is green.
((("Dave" "is" "furry" "+") ("Dave" "is" "white" "~")) -> ("Dave" "is" "green" "+"))
Cold, blue things are red.
((("something" "is" "cold" "+") ("something" "is" "blue" "+")) -> ("something" "is" "red" "+"))
If Gary is not young then Gary is cold.
((("Gary" "is" "young" "~")) -> ("Gary" "is" "cold" "+"))
Gary is not young.
True
1
proof
[(triple16)]
("Gary" "is" "young" "-")
triple16
Dave is not young.
False
1
inv-proof
[(triple7)]
("Dave" "is" "young" "-")
triple7
Gary is cold.
True
2
proof
[(((triple16) -> rule8))]
("Gary" "is" "cold" "+")
((triple16) -> (rule8 % int1))
Gary is cold.
("Gary" "is" "cold" "+")
int1
Gary is not cold.
False
2
inv-proof
[(((triple16) -> rule8))]
("Gary" "is" "cold" "-")
((triple16) -> (rule8 % int1))
Gary is cold.
("Gary" "is" "cold" "+")
int1
Gary is red.
True
4
proof
[(((((triple16) -> rule8) triple14) -> rule7))]
("Gary" "is" "red" "+")
((((triple16) -> (rule8 % int2)) triple14) -> (rule7 % int1))
Gary is red.
("Gary" "is" "red" "+")
int1
Gary is cold.
("Gary" "is" "cold" "+")
int2
Gary is not red.
False
4
inv-proof
[(((((triple16) -> rule8) triple14) -> rule7))]
("Gary" "is" "red" "-")
((((triple16) -> (rule8 % int2)) triple14) -> (rule7 % int1))
Gary is red.
("Gary" "is" "red" "+")
int1
Gary is cold.
("Gary" "is" "cold" "+")
int2
Gary is green.
True
7
proof
[(((((triple16) -> rule8) ((((triple16) -> rule8) triple14) -> rule7)) -> rule4))]
("Gary" "is" "green" "+")
((((triple16) -> (rule8 % int3)) ((((triple16) -> (rule8 % int3)) triple14) -> (rule7 % int2))) -> (rule4 % int1))
Gary is green.
("Gary" "is" "green" "+")
int1
Gary is red.
("Gary" "is" "red" "+")
int2
Gary is cold.
("Gary" "is" "cold" "+")
int3
Gary is not green.
False
7
inv-proof
[(((((triple16) -> rule8) ((((triple16) -> rule8) triple14) -> rule7)) -> rule4))]
("Gary" "is" "green" "-")
((((triple16) -> (rule8 % int3)) ((((triple16) -> (rule8 % int3)) triple14) -> (rule7 % int2))) -> (rule4 % int1))
Gary is green.
("Gary" "is" "green" "+")
int1
Gary is red.
("Gary" "is" "red" "+")
int2
Gary is cold.
("Gary" "is" "cold" "+")
int3
Erin is not green.
Unknown
inv-rconc
[@1: Erin is green.[CWA. Example of deepest failure = (rule4 <- FAIL)]]
("Erin" "is" "green" "-")
Erin is blue.
Unknown
random
[@0: Erin is blue.[CWA. Example of deepest failure = (FAIL)]]
("Erin" "is" "blue" "+")
Fiona is not cold.
Unknown
inv-random
[@0: Fiona is cold.[CWA. Example of deepest failure = (FAIL)]]
("Fiona" "is" "cold" "-")
Erin is cold.
Unknown
random
[@0: Erin is cold.[CWA. Example of deepest failure = (FAIL)]]
("Erin" "is" "cold" "+")
Fiona is not blue.
Unknown
inv-random
[@0: Fiona is blue.[CWA. Example of deepest failure = (FAIL)]]
("Fiona" "is" "blue" "-")
Erin is young.
Unknown
random
[@0: Erin is young.[CWA. Example of deepest failure = (FAIL)]]
("Erin" "is" "young" "+")
Fiona is not young.
Unknown
inv-random
[@0: Fiona is young.[CWA. Example of deepest failure = (FAIL)]]
("Fiona" "is" "young" "-")
Fiona is white.
Unknown
random
[@0: Fiona is white.[CWA. Example of deepest failure = (FAIL)]]
("Fiona" "is" "white" "+")
@0: Dave is blue.[(triple1)] Dave is cold.[(triple2)] Dave is furry.[(triple3)] Dave is green.[(triple4 OR ((triple2 triple5) -> rule4) OR ((triple2 ((triple2 triple1) -> rule7)) -> rule4))] Dave is red.[(triple5 OR ((triple2 triple1) -> rule7))] Dave is white.[(triple6)] Dave is young.[(triple7)] Erin is not furry.[(triple8 OR ((triple9 triple10) -> rule1))] Erin is not white.[(triple10)] Erin is red.[(triple9)] Fiona is furry.[(triple11)] Fiona is not green.[(triple12)] Fiona is not red.[(triple13)] Gary is blue.[(triple14)] Gary is not young.[(triple16)] Gary is white.[(triple15)] @1: Gary is cold.[(((triple16) -> rule8))] @2: Gary is red.[(((((triple16) -> rule8) triple14) -> rule7))] @3: Gary is green.[(((((triple16) -> rule8) ((((triple16) -> rule8) triple14) -> rule7)) -> rule4))] Gary is not furry.[(((((((triple16) -> rule8) triple14) -> rule7) triple16) -> rule3))]
Dave is blue.
("Dave" "is" "blue" "+")
triple1
Dave is cold.
("Dave" "is" "cold" "+")
triple2
Dave is furry.
("Dave" "is" "furry" "+")
triple3
Dave is green.
("Dave" "is" "green" "+")
triple4
((triple2 triple5) -> (rule4 % int1))
Dave is green.
("Dave" "is" "green" "+")
int1
((triple2 ((triple2 triple1) -> (rule7 % int2))) -> (rule4 % int1))
Dave is green.
("Dave" "is" "green" "+")
int1
Dave is red.
("Dave" "is" "red" "+")
int2
Dave is red.
("Dave" "is" "red" "+")
triple5
((triple2 triple1) -> (rule7 % int1))
Dave is red.
("Dave" "is" "red" "+")
int1
Dave is white.
("Dave" "is" "white" "+")
triple6
Dave is young.
("Dave" "is" "young" "+")
triple7
Erin is not furry.
("Erin" "is" "furry" "-")
triple8
((triple9 triple10) -> (rule1 % int1))
Erin is not furry.
("Erin" "is" "furry" "-")
int1
Erin is not white.
("Erin" "is" "white" "-")
triple10
Erin is red.
("Erin" "is" "red" "+")
triple9
Fiona is furry.
("Fiona" "is" "furry" "+")
triple11
Fiona is not green.
("Fiona" "is" "green" "-")
triple12
Fiona is not red.
("Fiona" "is" "red" "-")
triple13
Gary is blue.
("Gary" "is" "blue" "+")
triple14
Gary is not young.
("Gary" "is" "young" "-")
triple16
Gary is white.
("Gary" "is" "white" "+")
triple15
Gary is cold.
("Gary" "is" "cold" "+")
((triple16) -> (rule8 % int1))
Gary is cold.
("Gary" "is" "cold" "+")
int1
Gary is red.
("Gary" "is" "red" "+")
((((triple16) -> (rule8 % int2)) triple14) -> (rule7 % int1))
Gary is red.
("Gary" "is" "red" "+")
int1
Gary is cold.
("Gary" "is" "cold" "+")
int2
Gary is green.
("Gary" "is" "green" "+")
((((triple16) -> (rule8 % int3)) ((((triple16) -> (rule8 % int3)) triple14) -> (rule7 % int2))) -> (rule4 % int1))
Gary is green.
("Gary" "is" "green" "+")
int1
Gary is red.
("Gary" "is" "red" "+")
int2
Gary is cold.
("Gary" "is" "cold" "+")
int3
Gary is not furry.
("Gary" "is" "furry" "-")
((((((triple16) -> (rule8 % int3)) triple14) -> (rule7 % int2)) triple16) -> (rule3 % int1))
Gary is not furry.
("Gary" "is" "furry" "-")
int1
Gary is red.
("Gary" "is" "red" "+")
int2
Gary is cold.
("Gary" "is" "cold" "+")
int3