Bob is furry. Bob is round. Bob is young. Charlie is big. Charlie is green. Charlie is round. Charlie is young. Erin is big. Erin is white. Fiona is big. Fiona is green. Fiona is kind. Fiona is round. Fiona is white. Fiona is young. If something is kind then it is green. If something is green then it is white. All furry things are young. Big things are furry. If something is white and young then it is furry. Young things are big.
Bob is furry.
("Bob" "is" "furry" "+")
Bob is round.
("Bob" "is" "round" "+")
Bob is young.
("Bob" "is" "young" "+")
Charlie is big.
("Charlie" "is" "big" "+")
Charlie is green.
("Charlie" "is" "green" "+")
Charlie is round.
("Charlie" "is" "round" "+")
Charlie is young.
("Charlie" "is" "young" "+")
Erin is big.
("Erin" "is" "big" "+")
Erin is white.
("Erin" "is" "white" "+")
Fiona is big.
("Fiona" "is" "big" "+")
Fiona is green.
("Fiona" "is" "green" "+")
Fiona is kind.
("Fiona" "is" "kind" "+")
Fiona is round.
("Fiona" "is" "round" "+")
Fiona is white.
("Fiona" "is" "white" "+")
Fiona is young.
("Fiona" "is" "young" "+")
If something is kind then it is green.
((("something" "is" "kind" "+")) -> ("something" "is" "green" "+"))
If something is green then it is white.
((("something" "is" "green" "+")) -> ("something" "is" "white" "+"))
All furry things are young.
((("something" "is" "furry" "+")) -> ("something" "is" "young" "+"))
Big things are furry.
((("something" "is" "big" "+")) -> ("something" "is" "furry" "+"))
If something is white and young then it is furry.
((("something" "is" "white" "+") ("something" "is" "young" "+")) -> ("something" "is" "furry" "+"))
Young things are big.
((("something" "is" "young" "+")) -> ("something" "is" "big" "+"))
Fiona is kind.
True
1
proof
[(triple12)]
("Fiona" "is" "kind" "+")
triple12
Charlie is not young.
False
1
inv-proof
[(triple7 OR ((((triple4) -> rule4)) -> rule3))]
("Charlie" "is" "young" "-")
triple7
((((triple4) -> (rule4 % int2))) -> (rule3 % int1))
Charlie is young.
("Charlie" "is" "young" "+")
int1
Charlie is furry.
("Charlie" "is" "furry" "+")
int2
Fiona is furry.
True
2
proof
[(((triple10) -> rule4) OR ((triple14 triple15) -> rule5) OR ((((triple15) -> rule6)) -> rule4) OR ((((triple11) -> rule2) triple15) -> rule5) OR ((((((triple12) -> rule1)) -> rule2) triple15) -> rule5))]
("Fiona" "is" "furry" "+")
((triple10) -> (rule4 % int1))
Fiona is furry.
("Fiona" "is" "furry" "+")
int1
((triple14 triple15) -> (rule5 % int1))
Fiona is furry.
("Fiona" "is" "furry" "+")
int1
((((triple15) -> (rule6 % int2))) -> (rule4 % int1))
Fiona is furry.
("Fiona" "is" "furry" "+")
int1
Fiona is big.
("Fiona" "is" "big" "+")
int2
((((triple11) -> (rule2 % int2)) triple15) -> (rule5 % int1))
Fiona is furry.
("Fiona" "is" "furry" "+")
int1
Fiona is white.
("Fiona" "is" "white" "+")
int2
((((((triple12) -> (rule1 % int3))) -> (rule2 % int2)) triple15) -> (rule5 % int1))
Fiona is furry.
("Fiona" "is" "furry" "+")
int1
Fiona is white.
("Fiona" "is" "white" "+")
int2
Fiona is green.
("Fiona" "is" "green" "+")
int3
Charlie is not white.
False
2
inv-proof
[(((triple5) -> rule2))]
("Charlie" "is" "white" "-")
((triple5) -> (rule2 % int1))
Charlie is white.
("Charlie" "is" "white" "+")
int1
Erin is young.
True
3
proof
[(((((triple8) -> rule4)) -> rule3))]
("Erin" "is" "young" "+")
((((triple8) -> (rule4 % int2))) -> (rule3 % int1))
Erin is young.
("Erin" "is" "young" "+")
int1
Erin is furry.
("Erin" "is" "furry" "+")
int2
Erin is not young.
False
3
inv-proof
[(((((triple8) -> rule4)) -> rule3))]
("Erin" "is" "young" "-")
((((triple8) -> (rule4 % int2))) -> (rule3 % int1))
Erin is young.
("Erin" "is" "young" "+")
int1
Erin is furry.
("Erin" "is" "furry" "+")
int2
Bob is not green.
Unknown
inv-rconc
[@1: Bob is green.[CWA. Example of deepest failure = (rule1 <- FAIL)]]
("Bob" "is" "green" "-")
Erin is green.
Unknown
rconc
[@1: Erin is green.[CWA. Example of deepest failure = (rule1 <- FAIL)]]
("Erin" "is" "green" "+")
Bob is not white.
Unknown
inv-rconc
[@2: Bob is white.[CWA. Example of deepest failure = (rule2 <- rule1 <- FAIL)]]
("Bob" "is" "white" "-")
Charlie is kind.
Unknown
random
[@0: Charlie is kind.[CWA. Example of deepest failure = (FAIL)]]
("Charlie" "is" "kind" "+")
Bob is not kind.
Unknown
inv-random
[@0: Bob is kind.[CWA. Example of deepest failure = (FAIL)]]
("Bob" "is" "kind" "-")
Erin is kind.
Unknown
random
[@0: Erin is kind.[CWA. Example of deepest failure = (FAIL)]]
("Erin" "is" "kind" "+")
@0: Bob is furry.[(triple1 OR ((((triple3) -> rule6)) -> rule4))] Bob is round.[(triple2)] Bob is young.[(triple3 OR ((triple1) -> rule3))] Charlie is big.[(triple4 OR ((triple7) -> rule6))] Charlie is green.[(triple5)] Charlie is round.[(triple6)] Charlie is young.[(triple7 OR ((((triple4) -> rule4)) -> rule3))] Erin is big.[(triple8)] Erin is white.[(triple9)] Fiona is big.[(triple10 OR ((triple15) -> rule6))] Fiona is green.[(triple11 OR ((triple12) -> rule1))] Fiona is kind.[(triple12)] Fiona is round.[(triple13)] Fiona is white.[(triple14 OR ((triple11) -> rule2) OR ((((triple12) -> rule1)) -> rule2))] Fiona is young.[(triple15 OR ((((triple10) -> rule4)) -> rule3))] @1: Bob is big.[(((triple3) -> rule6) OR ((((triple1) -> rule3)) -> rule6))] Charlie is furry.[(((triple4) -> rule4) OR ((((triple7) -> rule6)) -> rule4) OR ((((triple5) -> rule2) triple7) -> rule5))] Charlie is white.[(((triple5) -> rule2))] Erin is furry.[(((triple8) -> rule4))] Fiona is furry.[(((triple10) -> rule4) OR ((triple14 triple15) -> rule5) OR ((((triple15) -> rule6)) -> rule4) OR ((((triple11) -> rule2) triple15) -> rule5) OR ((((((triple12) -> rule1)) -> rule2) triple15) -> rule5))] @2: Erin is young.[(((((triple8) -> rule4)) -> rule3))]
Bob is furry.
("Bob" "is" "furry" "+")
triple1
((((triple3) -> (rule6 % int2))) -> (rule4 % int1))
Bob is furry.
("Bob" "is" "furry" "+")
int1
Bob is big.
("Bob" "is" "big" "+")
int2
Bob is round.
("Bob" "is" "round" "+")
triple2
Bob is young.
("Bob" "is" "young" "+")
triple3
((triple1) -> (rule3 % int1))
Bob is young.
("Bob" "is" "young" "+")
int1
Charlie is big.
("Charlie" "is" "big" "+")
triple4
((triple7) -> (rule6 % int1))
Charlie is big.
("Charlie" "is" "big" "+")
int1
Charlie is green.
("Charlie" "is" "green" "+")
triple5
Charlie is round.
("Charlie" "is" "round" "+")
triple6
Charlie is young.
("Charlie" "is" "young" "+")
triple7
((((triple4) -> (rule4 % int2))) -> (rule3 % int1))
Charlie is young.
("Charlie" "is" "young" "+")
int1
Charlie is furry.
("Charlie" "is" "furry" "+")
int2
Erin is big.
("Erin" "is" "big" "+")
triple8
Erin is white.
("Erin" "is" "white" "+")
triple9
Fiona is big.
("Fiona" "is" "big" "+")
triple10
((triple15) -> (rule6 % int1))
Fiona is big.
("Fiona" "is" "big" "+")
int1
Fiona is green.
("Fiona" "is" "green" "+")
triple11
((triple12) -> (rule1 % int1))
Fiona is green.
("Fiona" "is" "green" "+")
int1
Fiona is kind.
("Fiona" "is" "kind" "+")
triple12
Fiona is round.
("Fiona" "is" "round" "+")
triple13
Fiona is white.
("Fiona" "is" "white" "+")
triple14
((triple11) -> (rule2 % int1))
Fiona is white.
("Fiona" "is" "white" "+")
int1
((((triple12) -> (rule1 % int2))) -> (rule2 % int1))
Fiona is white.
("Fiona" "is" "white" "+")
int1
Fiona is green.
("Fiona" "is" "green" "+")
int2
Fiona is young.
("Fiona" "is" "young" "+")
triple15
((((triple10) -> (rule4 % int2))) -> (rule3 % int1))
Fiona is young.
("Fiona" "is" "young" "+")
int1
Fiona is furry.
("Fiona" "is" "furry" "+")
int2
Bob is big.
("Bob" "is" "big" "+")
((triple3) -> (rule6 % int1))
Bob is big.
("Bob" "is" "big" "+")
int1
((((triple1) -> (rule3 % int2))) -> (rule6 % int1))
Bob is big.
("Bob" "is" "big" "+")
int1
Bob is young.
("Bob" "is" "young" "+")
int2
Charlie is furry.
("Charlie" "is" "furry" "+")
((triple4) -> (rule4 % int1))
Charlie is furry.
("Charlie" "is" "furry" "+")
int1
((((triple7) -> (rule6 % int2))) -> (rule4 % int1))
Charlie is furry.
("Charlie" "is" "furry" "+")
int1
Charlie is big.
("Charlie" "is" "big" "+")
int2
((((triple5) -> (rule2 % int2)) triple7) -> (rule5 % int1))
Charlie is furry.
("Charlie" "is" "furry" "+")
int1
Charlie is white.
("Charlie" "is" "white" "+")
int2
Charlie is white.
("Charlie" "is" "white" "+")
((triple5) -> (rule2 % int1))
Charlie is white.
("Charlie" "is" "white" "+")
int1
Erin is furry.
("Erin" "is" "furry" "+")
((triple8) -> (rule4 % int1))
Erin is furry.
("Erin" "is" "furry" "+")
int1
Fiona is furry.
("Fiona" "is" "furry" "+")
((triple10) -> (rule4 % int1))
Fiona is furry.
("Fiona" "is" "furry" "+")
int1
((triple14 triple15) -> (rule5 % int1))
Fiona is furry.
("Fiona" "is" "furry" "+")
int1
((((triple15) -> (rule6 % int2))) -> (rule4 % int1))
Fiona is furry.
("Fiona" "is" "furry" "+")
int1
Fiona is big.
("Fiona" "is" "big" "+")
int2
((((triple11) -> (rule2 % int2)) triple15) -> (rule5 % int1))
Fiona is furry.
("Fiona" "is" "furry" "+")
int1
Fiona is white.
("Fiona" "is" "white" "+")
int2
((((((triple12) -> (rule1 % int3))) -> (rule2 % int2)) triple15) -> (rule5 % int1))
Fiona is furry.
("Fiona" "is" "furry" "+")
int1
Fiona is white.
("Fiona" "is" "white" "+")
int2
Fiona is green.
("Fiona" "is" "green" "+")
int3
Erin is young.
("Erin" "is" "young" "+")
((((triple8) -> (rule4 % int2))) -> (rule3 % int1))
Erin is young.
("Erin" "is" "young" "+")
int1
Erin is furry.
("Erin" "is" "furry" "+")
int2