Anne is blue. Anne is cold. Anne is green. Anne is kind. Anne is red. Anne is young. Dave is green. Erin is blue. Erin is cold. Erin is kind. Fiona is blue. Fiona is cold. Fiona is kind. Fiona is white. Fiona is young. Young people are kind. Young, cold people are red. Cold people are young.
Anne is blue.
("Anne" "is" "blue" "+")
Anne is cold.
("Anne" "is" "cold" "+")
Anne is green.
("Anne" "is" "green" "+")
Anne is kind.
("Anne" "is" "kind" "+")
Anne is red.
("Anne" "is" "red" "+")
Anne is young.
("Anne" "is" "young" "+")
Dave is green.
("Dave" "is" "green" "+")
Erin is blue.
("Erin" "is" "blue" "+")
Erin is cold.
("Erin" "is" "cold" "+")
Erin is kind.
("Erin" "is" "kind" "+")
Fiona is blue.
("Fiona" "is" "blue" "+")
Fiona is cold.
("Fiona" "is" "cold" "+")
Fiona is kind.
("Fiona" "is" "kind" "+")
Fiona is white.
("Fiona" "is" "white" "+")
Fiona is young.
("Fiona" "is" "young" "+")
Young people are kind.
((("someone" "is" "young" "+")) -> ("someone" "is" "kind" "+"))
Young, cold people are red.
((("someone" "is" "young" "+") ("someone" "is" "cold" "+")) -> ("someone" "is" "red" "+"))
Cold people are young.
((("someone" "is" "cold" "+")) -> ("someone" "is" "young" "+"))
Anne is cold.
True
1
proof
[(triple2)]
("Anne" "is" "cold" "+")
triple2
Anne is not kind.
False
1
inv-proof
[(triple4 OR ((triple6) -> rule1) OR ((((triple2) -> rule3)) -> rule1))]
("Anne" "is" "kind" "-")
triple4
((triple6) -> (rule1 % int1))
Anne is kind.
("Anne" "is" "kind" "+")
int1
((((triple2) -> (rule3 % int2))) -> (rule1 % int1))
Anne is kind.
("Anne" "is" "kind" "+")
int1
Anne is young.
("Anne" "is" "young" "+")
int2
Fiona is red.
True
3
proof
[(((triple15 triple12) -> rule2) OR ((((triple12) -> rule3) triple12) -> rule2))]
("Fiona" "is" "red" "+")
((triple15 triple12) -> (rule2 % int1))
Fiona is red.
("Fiona" "is" "red" "+")
int1
((((triple12) -> (rule3 % int2)) triple12) -> (rule2 % int1))
Fiona is red.
("Fiona" "is" "red" "+")
int1
Fiona is young.
("Fiona" "is" "young" "+")
int2
Erin is not young.
False
2
inv-proof
[(((triple9) -> rule3))]
("Erin" "is" "young" "-")
((triple9) -> (rule3 % int1))
Erin is young.
("Erin" "is" "young" "+")
int1
Erin is red.
True
4
proof
[(((((triple9) -> rule3) triple9) -> rule2))]
("Erin" "is" "red" "+")
((((triple9) -> (rule3 % int2)) triple9) -> (rule2 % int1))
Erin is red.
("Erin" "is" "red" "+")
int1
Erin is young.
("Erin" "is" "young" "+")
int2
Erin is not red.
False
4
inv-proof
[(((((triple9) -> rule3) triple9) -> rule2))]
("Erin" "is" "red" "-")
((((triple9) -> (rule3 % int2)) triple9) -> (rule2 % int1))
Erin is red.
("Erin" "is" "red" "+")
int1
Erin is young.
("Erin" "is" "young" "+")
int2
Dave is not young.
Unknown
inv-rconc
[@1: Dave is young.[CWA. Example of deepest failure = (rule3 <- FAIL)]]
("Dave" "is" "young" "-")
Dave is kind.
Unknown
rconc
[@2: Dave is kind.[CWA. Example of deepest failure = (rule1 <- rule3 <- FAIL)]]
("Dave" "is" "kind" "+")
Dave is not red.
Unknown
inv-rconc
[@1: Dave is red.[CWA. Example of deepest failure = (rule2 <- FAIL)]]
("Dave" "is" "red" "-")
Erin is white.
Unknown
random
[@0: Erin is white.[CWA. Example of deepest failure = (FAIL)]]
("Erin" "is" "white" "+")
Erin is not green.
Unknown
inv-random
[@0: Erin is green.[CWA. Example of deepest failure = (FAIL)]]
("Erin" "is" "green" "-")
Anne is white.
Unknown
random
[@0: Anne is white.[CWA. Example of deepest failure = (FAIL)]]
("Anne" "is" "white" "+")
@0: Anne is blue.[(triple1)] Anne is cold.[(triple2)] Anne is green.[(triple3)] Anne is kind.[(triple4 OR ((triple6) -> rule1) OR ((((triple2) -> rule3)) -> rule1))] Anne is red.[(triple5 OR ((triple6 triple2) -> rule2) OR ((((triple2) -> rule3) triple2) -> rule2))] Anne is young.[(triple6 OR ((triple2) -> rule3))] Dave is green.[(triple7)] Erin is blue.[(triple8)] Erin is cold.[(triple9)] Erin is kind.[(triple10 OR ((((triple9) -> rule3)) -> rule1))] Fiona is blue.[(triple11)] Fiona is cold.[(triple12)] Fiona is kind.[(triple13 OR ((triple15) -> rule1) OR ((((triple12) -> rule3)) -> rule1))] Fiona is white.[(triple14)] Fiona is young.[(triple15 OR ((triple12) -> rule3))] @1: Erin is young.[(((triple9) -> rule3))] Fiona is red.[(((triple15 triple12) -> rule2) OR ((((triple12) -> rule3) triple12) -> rule2))] @2: Erin is red.[(((((triple9) -> rule3) triple9) -> rule2))]
Anne is blue.
("Anne" "is" "blue" "+")
triple1
Anne is cold.
("Anne" "is" "cold" "+")
triple2
Anne is green.
("Anne" "is" "green" "+")
triple3
Anne is kind.
("Anne" "is" "kind" "+")
triple4
((triple6) -> (rule1 % int1))
Anne is kind.
("Anne" "is" "kind" "+")
int1
((((triple2) -> (rule3 % int2))) -> (rule1 % int1))
Anne is kind.
("Anne" "is" "kind" "+")
int1
Anne is young.
("Anne" "is" "young" "+")
int2
Anne is red.
("Anne" "is" "red" "+")
triple5
((triple6 triple2) -> (rule2 % int1))
Anne is red.
("Anne" "is" "red" "+")
int1
((((triple2) -> (rule3 % int2)) triple2) -> (rule2 % int1))
Anne is red.
("Anne" "is" "red" "+")
int1
Anne is young.
("Anne" "is" "young" "+")
int2
Anne is young.
("Anne" "is" "young" "+")
triple6
((triple2) -> (rule3 % int1))
Anne is young.
("Anne" "is" "young" "+")
int1
Dave is green.
("Dave" "is" "green" "+")
triple7
Erin is blue.
("Erin" "is" "blue" "+")
triple8
Erin is cold.
("Erin" "is" "cold" "+")
triple9
Erin is kind.
("Erin" "is" "kind" "+")
triple10
((((triple9) -> (rule3 % int2))) -> (rule1 % int1))
Erin is kind.
("Erin" "is" "kind" "+")
int1
Erin is young.
("Erin" "is" "young" "+")
int2
Fiona is blue.
("Fiona" "is" "blue" "+")
triple11
Fiona is cold.
("Fiona" "is" "cold" "+")
triple12
Fiona is kind.
("Fiona" "is" "kind" "+")
triple13
((triple15) -> (rule1 % int1))
Fiona is kind.
("Fiona" "is" "kind" "+")
int1
((((triple12) -> (rule3 % int2))) -> (rule1 % int1))
Fiona is kind.
("Fiona" "is" "kind" "+")
int1
Fiona is young.
("Fiona" "is" "young" "+")
int2
Fiona is white.
("Fiona" "is" "white" "+")
triple14
Fiona is young.
("Fiona" "is" "young" "+")
triple15
((triple12) -> (rule3 % int1))
Fiona is young.
("Fiona" "is" "young" "+")
int1
Erin is young.
("Erin" "is" "young" "+")
((triple9) -> (rule3 % int1))
Erin is young.
("Erin" "is" "young" "+")
int1
Fiona is red.
("Fiona" "is" "red" "+")
((triple15 triple12) -> (rule2 % int1))
Fiona is red.
("Fiona" "is" "red" "+")
int1
((((triple12) -> (rule3 % int2)) triple12) -> (rule2 % int1))
Fiona is red.
("Fiona" "is" "red" "+")
int1
Fiona is young.
("Fiona" "is" "young" "+")
int2
Erin is red.
("Erin" "is" "red" "+")
((((triple9) -> (rule3 % int2)) triple9) -> (rule2 % int1))
Erin is red.
("Erin" "is" "red" "+")
int1
Erin is young.
("Erin" "is" "young" "+")
int2