Anne is furry. Bob is blue. Bob is white. Charlie is quiet. Charlie is young. Fiona is blue. Fiona is furry. If Bob is smart then Bob is not young. If Anne is quiet then Anne is furry. If someone is blue then they are young. If someone is smart then they are furry. Young people are white. White, quiet people are not rough.
Anne is furry.
("Anne" "is" "furry" "+")
Bob is blue.
("Bob" "is" "blue" "+")
Bob is white.
("Bob" "is" "white" "+")
Charlie is quiet.
("Charlie" "is" "quiet" "+")
Charlie is young.
("Charlie" "is" "young" "+")
Fiona is blue.
("Fiona" "is" "blue" "+")
Fiona is furry.
("Fiona" "is" "furry" "+")
If Bob is smart then Bob is not young.
((("Bob" "is" "smart" "+")) -> ("Bob" "is" "young" "-"))
If Anne is quiet then Anne is furry.
((("Anne" "is" "quiet" "+")) -> ("Anne" "is" "furry" "+"))
If someone is blue then they are young.
((("someone" "is" "blue" "+")) -> ("someone" "is" "young" "+"))
If someone is smart then they are furry.
((("someone" "is" "smart" "+")) -> ("someone" "is" "furry" "+"))
Young people are white.
((("someone" "is" "young" "+")) -> ("someone" "is" "white" "+"))
White, quiet people are not rough.
((("someone" "is" "white" "+") ("someone" "is" "quiet" "+")) -> ("someone" "is" "rough" "-"))
Fiona is furry.
True
1
proof
[(triple7)]
("Fiona" "is" "furry" "+")
triple7
Bob is not blue.
False
1
inv-proof
[(triple2)]
("Bob" "is" "blue" "-")
triple2
Bob is young.
True
2
proof
[(((triple2) -> rule3))]
("Bob" "is" "young" "+")
((triple2) -> (rule3 % int1))
Bob is young.
("Bob" "is" "young" "+")
int1
Charlie is not white.
False
2
inv-proof
[(((triple5) -> rule5))]
("Charlie" "is" "white" "-")
((triple5) -> (rule5 % int1))
Charlie is white.
("Charlie" "is" "white" "+")
int1
Charlie is not rough.
True
4
proof
[(((((triple5) -> rule5) triple4) -> rule6))]
("Charlie" "is" "rough" "-")
((((triple5) -> (rule5 % int2)) triple4) -> (rule6 % int1))
Charlie is not rough.
("Charlie" "is" "rough" "-")
int1
Charlie is white.
("Charlie" "is" "white" "+")
int2
Charlie is rough.
False
4
inv-proof
[(((((triple5) -> rule5) triple4) -> rule6))]
("Charlie" "is" "rough" "+")
((((triple5) -> (rule5 % int2)) triple4) -> (rule6 % int1))
Charlie is not rough.
("Charlie" "is" "rough" "-")
int1
Charlie is white.
("Charlie" "is" "white" "+")
int2
Anne is not white.
Unknown
inv-rconc
[@2: Anne is white.[CWA. Example of deepest failure = (rule5 <- rule3 <- FAIL)]]
("Anne" "is" "white" "-")
Anne is young.
Unknown
rconc
[@1: Anne is young.[CWA. Example of deepest failure = (rule3 <- FAIL)]]
("Anne" "is" "young" "+")
Charlie is not furry.
Unknown
inv-rconc
[@1: Charlie is furry.[CWA. Example of deepest failure = (rule4 <- FAIL)]]
("Charlie" "is" "furry" "-")
Anne is quiet.
Unknown
random
[@0: Anne is quiet.[CWA. Example of deepest failure = (FAIL)]]
("Anne" "is" "quiet" "+")
Fiona is not smart.
Unknown
inv-random
[@0: Fiona is smart.[CWA. Example of deepest failure = (FAIL)]]
("Fiona" "is" "smart" "-")
Charlie is smart.
Unknown
random
[@0: Charlie is smart.[CWA. Example of deepest failure = (FAIL)]]
("Charlie" "is" "smart" "+")
@0: Anne is furry.[(triple1)] Bob is blue.[(triple2)] Bob is white.[(triple3 OR ((((triple2) -> rule3)) -> rule5))] Charlie is quiet.[(triple4)] Charlie is young.[(triple5)] Fiona is blue.[(triple6)] Fiona is furry.[(triple7)] @1: Bob is young.[(((triple2) -> rule3))] Charlie is white.[(((triple5) -> rule5))] Fiona is young.[(((triple6) -> rule3))] @2: Charlie is not rough.[(((((triple5) -> rule5) triple4) -> rule6))] Fiona is white.[(((((triple6) -> rule3)) -> rule5))]
Anne is furry.
("Anne" "is" "furry" "+")
triple1
Bob is blue.
("Bob" "is" "blue" "+")
triple2
Bob is white.
("Bob" "is" "white" "+")
triple3
((((triple2) -> (rule3 % int2))) -> (rule5 % int1))
Bob is white.
("Bob" "is" "white" "+")
int1
Bob is young.
("Bob" "is" "young" "+")
int2
Charlie is quiet.
("Charlie" "is" "quiet" "+")
triple4
Charlie is young.
("Charlie" "is" "young" "+")
triple5
Fiona is blue.
("Fiona" "is" "blue" "+")
triple6
Fiona is furry.
("Fiona" "is" "furry" "+")
triple7
Bob is young.
("Bob" "is" "young" "+")
((triple2) -> (rule3 % int1))
Bob is young.
("Bob" "is" "young" "+")
int1
Charlie is white.
("Charlie" "is" "white" "+")
((triple5) -> (rule5 % int1))
Charlie is white.
("Charlie" "is" "white" "+")
int1
Fiona is young.
("Fiona" "is" "young" "+")
((triple6) -> (rule3 % int1))
Fiona is young.
("Fiona" "is" "young" "+")
int1
Charlie is not rough.
("Charlie" "is" "rough" "-")
((((triple5) -> (rule5 % int2)) triple4) -> (rule6 % int1))
Charlie is not rough.
("Charlie" "is" "rough" "-")
int1
Charlie is white.
("Charlie" "is" "white" "+")
int2
Fiona is white.
("Fiona" "is" "white" "+")
((((triple6) -> (rule3 % int2))) -> (rule5 % int1))
Fiona is white.
("Fiona" "is" "white" "+")
int1
Fiona is young.
("Fiona" "is" "young" "+")
int2