Anne is red. Anne is round. Dave is red. Dave is young. Fiona is blue. Fiona is furry. Fiona is green. Fiona is red. Fiona is round. Fiona is young. All red, green people are round. If Anne is furry then Anne is young. If Dave is blue then Dave is red. Young, red people are blue. All green people are rough. If someone is round and young then they are blue.
Anne is red.
("Anne" "is" "red" "+")
Anne is round.
("Anne" "is" "round" "+")
Dave is red.
("Dave" "is" "red" "+")
Dave is young.
("Dave" "is" "young" "+")
Fiona is blue.
("Fiona" "is" "blue" "+")
Fiona is furry.
("Fiona" "is" "furry" "+")
Fiona is green.
("Fiona" "is" "green" "+")
Fiona is red.
("Fiona" "is" "red" "+")
Fiona is round.
("Fiona" "is" "round" "+")
Fiona is young.
("Fiona" "is" "young" "+")
All red, green people are round.
((("someone" "is" "red" "+") ("someone" "is" "green" "+")) -> ("someone" "is" "round" "+"))
If Anne is furry then Anne is young.
((("Anne" "is" "furry" "+")) -> ("Anne" "is" "young" "+"))
If Dave is blue then Dave is red.
((("Dave" "is" "blue" "+")) -> ("Dave" "is" "red" "+"))
Young, red people are blue.
((("someone" "is" "young" "+") ("someone" "is" "red" "+")) -> ("someone" "is" "blue" "+"))
All green people are rough.
((("someone" "is" "green" "+")) -> ("someone" "is" "rough" "+"))
If someone is round and young then they are blue.
((("someone" "is" "round" "+") ("someone" "is" "young" "+")) -> ("someone" "is" "blue" "+"))
Anne is round.
True
1
proof
[(triple2)]
("Anne" "is" "round" "+")
triple2
Fiona is not furry.
False
1
inv-proof
[(triple6)]
("Fiona" "is" "furry" "-")
triple6
Anne is not blue.
Unknown
inv-rconc
[@2: Anne is blue.[CWA. Example of deepest failure = (rule4 <- rule2 <- FAIL)]]
("Anne" "is" "blue" "-")
Anne is green.
Unknown
random
[@0: Anne is green.[CWA. Example of deepest failure = (FAIL)]]
("Anne" "is" "green" "+")
@0: Anne is red.[(triple1)] Anne is round.[(triple2)] Dave is red.[(triple3)] Dave is young.[(triple4)] Fiona is blue.[(triple5 OR ((triple10 triple8) -> rule4) OR ((triple9 triple10) -> rule6) OR ((((triple8 triple7) -> rule1) triple10) -> rule6))] Fiona is furry.[(triple6)] Fiona is green.[(triple7)] Fiona is red.[(triple8)] Fiona is round.[(triple9 OR ((triple8 triple7) -> rule1))] Fiona is young.[(triple10)] @1: Dave is blue.[(((triple4 triple3) -> rule4))] Fiona is rough.[(((triple7) -> rule5))]
Anne is red.
("Anne" "is" "red" "+")
triple1
Anne is round.
("Anne" "is" "round" "+")
triple2
Dave is red.
("Dave" "is" "red" "+")
triple3
Dave is young.
("Dave" "is" "young" "+")
triple4
Fiona is blue.
("Fiona" "is" "blue" "+")
triple5
((triple10 triple8) -> (rule4 % int1))
Fiona is blue.
("Fiona" "is" "blue" "+")
int1
((triple9 triple10) -> (rule6 % int1))
Fiona is blue.
("Fiona" "is" "blue" "+")
int1
((((triple8 triple7) -> (rule1 % int2)) triple10) -> (rule6 % int1))
Fiona is blue.
("Fiona" "is" "blue" "+")
int1
Fiona is round.
("Fiona" "is" "round" "+")
int2
Fiona is furry.
("Fiona" "is" "furry" "+")
triple6
Fiona is green.
("Fiona" "is" "green" "+")
triple7
Fiona is red.
("Fiona" "is" "red" "+")
triple8
Fiona is round.
("Fiona" "is" "round" "+")
triple9
((triple8 triple7) -> (rule1 % int1))
Fiona is round.
("Fiona" "is" "round" "+")
int1
Fiona is young.
("Fiona" "is" "young" "+")
triple10
Dave is blue.
("Dave" "is" "blue" "+")
((triple4 triple3) -> (rule4 % int1))
Dave is blue.
("Dave" "is" "blue" "+")
int1
Fiona is rough.
("Fiona" "is" "rough" "+")
((triple7) -> (rule5 % int1))
Fiona is rough.
("Fiona" "is" "rough" "+")
int1