Bob is young. Erin is not furry. Fiona is young. If Fiona is white and Fiona is young then Fiona is not rough. If Fiona is quiet and Fiona is big then Fiona is rough. If someone is furry then they are not blue. If someone is young then they are quiet. All white people are young. Quiet people are big.
Bob is young.
("Bob" "is" "young" "+")
Erin is not furry.
("Erin" "is" "furry" "-")
Fiona is young.
("Fiona" "is" "young" "+")
If Fiona is white and Fiona is young then Fiona is not rough.
((("Fiona" "is" "white" "+") ("Fiona" "is" "young" "+")) -> ("Fiona" "is" "rough" "-"))
If Fiona is quiet and Fiona is big then Fiona is rough.
((("Fiona" "is" "quiet" "+") ("Fiona" "is" "big" "+")) -> ("Fiona" "is" "rough" "+"))
If someone is furry then they are not blue.
((("someone" "is" "furry" "+")) -> ("someone" "is" "blue" "-"))
If someone is young then they are quiet.
((("someone" "is" "young" "+")) -> ("someone" "is" "quiet" "+"))
All white people are young.
((("someone" "is" "white" "+")) -> ("someone" "is" "young" "+"))
Quiet people are big.
((("someone" "is" "quiet" "+")) -> ("someone" "is" "big" "+"))
Bob is young.
True
1
proof
[(triple1)]
("Bob" "is" "young" "+")
triple1
Bob is not young.
False
1
inv-proof
[(triple1)]
("Bob" "is" "young" "-")
triple1
Fiona is quiet.
True
2
proof
[(((triple3) -> rule4))]
("Fiona" "is" "quiet" "+")
((triple3) -> (rule4 % int1))
Fiona is quiet.
("Fiona" "is" "quiet" "+")
int1
Bob is not quiet.
False
2
inv-proof
[(((triple1) -> rule4))]
("Bob" "is" "quiet" "-")
((triple1) -> (rule4 % int1))
Bob is quiet.
("Bob" "is" "quiet" "+")
int1
Bob is big.
True
3
proof
[(((((triple1) -> rule4)) -> rule6))]
("Bob" "is" "big" "+")
((((triple1) -> (rule4 % int2))) -> (rule6 % int1))
Bob is big.
("Bob" "is" "big" "+")
int1
Bob is quiet.
("Bob" "is" "quiet" "+")
int2
Fiona is not big.
False
3
inv-proof
[(((((triple3) -> rule4)) -> rule6))]
("Fiona" "is" "big" "-")
((((triple3) -> (rule4 % int2))) -> (rule6 % int1))
Fiona is big.
("Fiona" "is" "big" "+")
int1
Fiona is quiet.
("Fiona" "is" "quiet" "+")
int2
Fiona is rough.
True
6
proof
[(((((triple3) -> rule4) ((((triple3) -> rule4)) -> rule6)) -> rule2))]
("Fiona" "is" "rough" "+")
((((triple3) -> (rule4 % int3)) ((((triple3) -> (rule4 % int3))) -> (rule6 % int2))) -> (rule2 % int1))
Fiona is rough.
("Fiona" "is" "rough" "+")
int1
Fiona is big.
("Fiona" "is" "big" "+")
int2
Fiona is quiet.
("Fiona" "is" "quiet" "+")
int3
Fiona is not rough.
False
6
inv-proof
[(((((triple3) -> rule4) ((((triple3) -> rule4)) -> rule6)) -> rule2))]
("Fiona" "is" "rough" "-")
((((triple3) -> (rule4 % int3)) ((((triple3) -> (rule4 % int3))) -> (rule6 % int2))) -> (rule2 % int1))
Fiona is rough.
("Fiona" "is" "rough" "+")
int1
Fiona is big.
("Fiona" "is" "big" "+")
int2
Fiona is quiet.
("Fiona" "is" "quiet" "+")
int3
Erin is not young.
Unknown
inv-rconc
[@1: Erin is young.[CWA. Example of deepest failure = (rule5 <- FAIL)]]
("Erin" "is" "young" "-")
Erin is quiet.
Unknown
rconc
[@2: Erin is quiet.[CWA. Example of deepest failure = (rule4 <- rule5 <- FAIL)]]
("Erin" "is" "quiet" "+")
Erin is not big.
Unknown
inv-rconc
[@3: Erin is big.[CWA. Example of deepest failure = (rule6 <- rule4 <- rule5 <- FAIL)]]
("Erin" "is" "big" "-")
Bob is blue.
Unknown
random
[@0: Bob is blue.[CWA. Example of deepest failure = (FAIL)]]
("Bob" "is" "blue" "+")
Fiona is not blue.
Unknown
inv-random
[@0: Fiona is blue.[CWA. Example of deepest failure = (FAIL)]]
("Fiona" "is" "blue" "-")
Bob is white.
Unknown
random
[@0: Bob is white.[CWA. Example of deepest failure = (FAIL)]]
("Bob" "is" "white" "+")
Bob is not furry.
Unknown
inv-random
[@0: Bob is furry.[CWA. Example of deepest failure = (FAIL)]]
("Bob" "is" "furry" "-")
Bob is rough.
Unknown
random
[@0: Bob is rough.[CWA. Example of deepest failure = (FAIL)]]
("Bob" "is" "rough" "+")
@0: Bob is young.[(triple1)] Erin is not furry.[(triple2)] Fiona is young.[(triple3)] @1: Bob is quiet.[(((triple1) -> rule4))] Fiona is quiet.[(((triple3) -> rule4))] @2: Bob is big.[(((((triple1) -> rule4)) -> rule6))] Fiona is big.[(((((triple3) -> rule4)) -> rule6))] @3: Fiona is rough.[(((((triple3) -> rule4) ((((triple3) -> rule4)) -> rule6)) -> rule2))]
Bob is young.
("Bob" "is" "young" "+")
triple1
Erin is not furry.
("Erin" "is" "furry" "-")
triple2
Fiona is young.
("Fiona" "is" "young" "+")
triple3
Bob is quiet.
("Bob" "is" "quiet" "+")
((triple1) -> (rule4 % int1))
Bob is quiet.
("Bob" "is" "quiet" "+")
int1
Fiona is quiet.
("Fiona" "is" "quiet" "+")
((triple3) -> (rule4 % int1))
Fiona is quiet.
("Fiona" "is" "quiet" "+")
int1
Bob is big.
("Bob" "is" "big" "+")
((((triple1) -> (rule4 % int2))) -> (rule6 % int1))
Bob is big.
("Bob" "is" "big" "+")
int1
Bob is quiet.
("Bob" "is" "quiet" "+")
int2
Fiona is big.
("Fiona" "is" "big" "+")
((((triple3) -> (rule4 % int2))) -> (rule6 % int1))
Fiona is big.
("Fiona" "is" "big" "+")
int1
Fiona is quiet.
("Fiona" "is" "quiet" "+")
int2
Fiona is rough.
("Fiona" "is" "rough" "+")
((((triple3) -> (rule4 % int3)) ((((triple3) -> (rule4 % int3))) -> (rule6 % int2))) -> (rule2 % int1))
Fiona is rough.
("Fiona" "is" "rough" "+")
int1
Fiona is big.
("Fiona" "is" "big" "+")
int2
Fiona is quiet.
("Fiona" "is" "quiet" "+")
int3