Anne is furry. Bob is big. Bob is furry. Bob is quiet. Bob is round. Bob is white. Fiona is kind. All round people are kind. If someone is kind then they are furry. If someone is furry then they are round.
Anne is furry.
("Anne" "is" "furry" "+")
Bob is big.
("Bob" "is" "big" "+")
Bob is furry.
("Bob" "is" "furry" "+")
Bob is quiet.
("Bob" "is" "quiet" "+")
Bob is round.
("Bob" "is" "round" "+")
Bob is white.
("Bob" "is" "white" "+")
Fiona is kind.
("Fiona" "is" "kind" "+")
All round people are kind.
((("someone" "is" "round" "+")) -> ("someone" "is" "kind" "+"))
If someone is kind then they are furry.
((("someone" "is" "kind" "+")) -> ("someone" "is" "furry" "+"))
If someone is furry then they are round.
((("someone" "is" "furry" "+")) -> ("someone" "is" "round" "+"))
Bob is furry.
True
1
proof
[(triple3 OR ((((triple5) -> rule1)) -> rule2))]
("Bob" "is" "furry" "+")
triple3
((((triple5) -> (rule1 % int2))) -> (rule2 % int1))
Bob is furry.
("Bob" "is" "furry" "+")
int1
Bob is kind.
("Bob" "is" "kind" "+")
int2
Bob is not quiet.
False
1
inv-proof
[(triple4)]
("Bob" "is" "quiet" "-")
triple4
Fiona is furry.
True
2
proof
[(((triple7) -> rule2))]
("Fiona" "is" "furry" "+")
((triple7) -> (rule2 % int1))
Fiona is furry.
("Fiona" "is" "furry" "+")
int1
Bob is not kind.
False
2
inv-proof
[(((triple5) -> rule1) OR ((((triple3) -> rule3)) -> rule1))]
("Bob" "is" "kind" "-")
((triple5) -> (rule1 % int1))
Bob is kind.
("Bob" "is" "kind" "+")
int1
((((triple3) -> (rule3 % int2))) -> (rule1 % int1))
Bob is kind.
("Bob" "is" "kind" "+")
int1
Bob is round.
("Bob" "is" "round" "+")
int2
Anne is kind.
True
3
proof
[(((((triple1) -> rule3)) -> rule1))]
("Anne" "is" "kind" "+")
((((triple1) -> (rule3 % int2))) -> (rule1 % int1))
Anne is kind.
("Anne" "is" "kind" "+")
int1
Anne is round.
("Anne" "is" "round" "+")
int2
Fiona is not round.
False
3
inv-proof
[(((((triple7) -> rule2)) -> rule3))]
("Fiona" "is" "round" "-")
((((triple7) -> (rule2 % int2))) -> (rule3 % int1))
Fiona is round.
("Fiona" "is" "round" "+")
int1
Fiona is furry.
("Fiona" "is" "furry" "+")
int2
Fiona is not big.
Unknown
inv-random
[@0: Fiona is big.[CWA. Example of deepest failure = (FAIL)]]
("Fiona" "is" "big" "-")
Anne is quiet.
Unknown
random
[@0: Anne is quiet.[CWA. Example of deepest failure = (FAIL)]]
("Anne" "is" "quiet" "+")
Anne is not smart.
Unknown
inv-random
[@0: Anne is smart.[CWA. Example of deepest failure = (FAIL)]]
("Anne" "is" "smart" "-")
Fiona is smart.
Unknown
random
[@0: Fiona is smart.[CWA. Example of deepest failure = (FAIL)]]
("Fiona" "is" "smart" "+")
Fiona is not white.
Unknown
inv-random
[@0: Fiona is white.[CWA. Example of deepest failure = (FAIL)]]
("Fiona" "is" "white" "-")
Fiona is quiet.
Unknown
random
[@0: Fiona is quiet.[CWA. Example of deepest failure = (FAIL)]]
("Fiona" "is" "quiet" "+")
@0: Anne is furry.[(triple1)] Bob is big.[(triple2)] Bob is furry.[(triple3 OR ((((triple5) -> rule1)) -> rule2))] Bob is quiet.[(triple4)] Bob is round.[(triple5 OR ((triple3) -> rule3))] Bob is white.[(triple6)] Fiona is kind.[(triple7)] @1: Anne is round.[(((triple1) -> rule3))] Bob is kind.[(((triple5) -> rule1) OR ((((triple3) -> rule3)) -> rule1))] Fiona is furry.[(((triple7) -> rule2))] @2: Anne is kind.[(((((triple1) -> rule3)) -> rule1))] Fiona is round.[(((((triple7) -> rule2)) -> rule3))]
Anne is furry.
("Anne" "is" "furry" "+")
triple1
Bob is big.
("Bob" "is" "big" "+")
triple2
Bob is furry.
("Bob" "is" "furry" "+")
triple3
((((triple5) -> (rule1 % int2))) -> (rule2 % int1))
Bob is furry.
("Bob" "is" "furry" "+")
int1
Bob is kind.
("Bob" "is" "kind" "+")
int2
Bob is quiet.
("Bob" "is" "quiet" "+")
triple4
Bob is round.
("Bob" "is" "round" "+")
triple5
((triple3) -> (rule3 % int1))
Bob is round.
("Bob" "is" "round" "+")
int1
Bob is white.
("Bob" "is" "white" "+")
triple6
Fiona is kind.
("Fiona" "is" "kind" "+")
triple7
Anne is round.
("Anne" "is" "round" "+")
((triple1) -> (rule3 % int1))
Anne is round.
("Anne" "is" "round" "+")
int1
Bob is kind.
("Bob" "is" "kind" "+")
((triple5) -> (rule1 % int1))
Bob is kind.
("Bob" "is" "kind" "+")
int1
((((triple3) -> (rule3 % int2))) -> (rule1 % int1))
Bob is kind.
("Bob" "is" "kind" "+")
int1
Bob is round.
("Bob" "is" "round" "+")
int2
Fiona is furry.
("Fiona" "is" "furry" "+")
((triple7) -> (rule2 % int1))
Fiona is furry.
("Fiona" "is" "furry" "+")
int1
Anne is kind.
("Anne" "is" "kind" "+")
((((triple1) -> (rule3 % int2))) -> (rule1 % int1))
Anne is kind.
("Anne" "is" "kind" "+")
int1
Anne is round.
("Anne" "is" "round" "+")
int2
Fiona is round.
("Fiona" "is" "round" "+")
((((triple7) -> (rule2 % int2))) -> (rule3 % int1))
Fiona is round.
("Fiona" "is" "round" "+")
int1
Fiona is furry.
("Fiona" "is" "furry" "+")
int2