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