Anne is furry. Anne is green. Anne is rough. Charlie is blue. Charlie is furry. Charlie is quiet. Charlie is rough. Charlie is young. Erin is big. Erin is blue. Erin is furry. Erin is green. Erin is rough. Erin is young. Gary is blue. Gary is young. All blue, rough people are green. If someone is blue and not quiet then they are green. If someone is green and not quiet then they are blue. If someone is quiet and blue then they are big. All green people are big. All quiet people are young. All blue people are rough. If someone is big and not young then they are not furry.
Anne is furry.
("Anne" "is" "furry" "+")
Anne is green.
("Anne" "is" "green" "+")
Anne is rough.
("Anne" "is" "rough" "+")
Charlie is blue.
("Charlie" "is" "blue" "+")
Charlie is furry.
("Charlie" "is" "furry" "+")
Charlie is quiet.
("Charlie" "is" "quiet" "+")
Charlie is rough.
("Charlie" "is" "rough" "+")
Charlie is young.
("Charlie" "is" "young" "+")
Erin is big.
("Erin" "is" "big" "+")
Erin is blue.
("Erin" "is" "blue" "+")
Erin is furry.
("Erin" "is" "furry" "+")
Erin is green.
("Erin" "is" "green" "+")
Erin is rough.
("Erin" "is" "rough" "+")
Erin is young.
("Erin" "is" "young" "+")
Gary is blue.
("Gary" "is" "blue" "+")
Gary is young.
("Gary" "is" "young" "+")
All blue, rough people are green.
((("someone" "is" "blue" "+") ("someone" "is" "rough" "+")) -> ("someone" "is" "green" "+"))
If someone is blue and not quiet then they are green.
((("someone" "is" "blue" "+") ("someone" "is" "quiet" "~")) -> ("someone" "is" "green" "+"))
If someone is green and not quiet then they are blue.
((("someone" "is" "green" "+") ("someone" "is" "quiet" "~")) -> ("someone" "is" "blue" "+"))
If someone is quiet and blue then they are big.
((("someone" "is" "quiet" "+") ("someone" "is" "blue" "+")) -> ("someone" "is" "big" "+"))
All green people are big.
((("someone" "is" "green" "+")) -> ("someone" "is" "big" "+"))
All quiet people are young.
((("someone" "is" "quiet" "+")) -> ("someone" "is" "young" "+"))
All blue people are rough.
((("someone" "is" "blue" "+")) -> ("someone" "is" "rough" "+"))
If someone is big and not young then they are not furry.
((("someone" "is" "big" "+") ("someone" "is" "young" "~")) -> ("someone" "is" "furry" "-"))
Erin is big.
True
1
proof
[(triple9 OR ((triple12) -> rule5) OR ((((triple10 triple13) -> rule1)) -> rule5) OR ((((triple10 ((triple10) -> rule7)) -> rule1)) -> rule5))]
("Erin" "is" "big" "+")
triple9
((triple12) -> (rule5 % int1))
Erin is big.
("Erin" "is" "big" "+")
int1
((((triple10 triple13) -> (rule1 % int2))) -> (rule5 % int1))
Erin is big.
("Erin" "is" "big" "+")
int1
Erin is green.
("Erin" "is" "green" "+")
int2
((((triple10 ((triple10) -> (rule7 % int3))) -> (rule1 % int2))) -> (rule5 % int1))
Erin is big.
("Erin" "is" "big" "+")
int1
Erin is green.
("Erin" "is" "green" "+")
int2
Erin is rough.
("Erin" "is" "rough" "+")
int3
Erin is not big.
False
1
inv-proof
[(triple9 OR ((triple12) -> rule5) OR ((((triple10 triple13) -> rule1)) -> rule5) OR ((((triple10 ((triple10) -> rule7)) -> rule1)) -> rule5))]
("Erin" "is" "big" "-")
triple9
((triple12) -> (rule5 % int1))
Erin is big.
("Erin" "is" "big" "+")
int1
((((triple10 triple13) -> (rule1 % int2))) -> (rule5 % int1))
Erin is big.
("Erin" "is" "big" "+")
int1
Erin is green.
("Erin" "is" "green" "+")
int2
((((triple10 ((triple10) -> (rule7 % int3))) -> (rule1 % int2))) -> (rule5 % int1))
Erin is big.
("Erin" "is" "big" "+")
int1
Erin is green.
("Erin" "is" "green" "+")
int2
Erin is rough.
("Erin" "is" "rough" "+")
int3
Charlie is big.
True
3
proof
[(((triple6 triple4) -> rule4) OR ((((triple4 triple7) -> rule1)) -> rule5) OR ((((triple4 ((triple4) -> rule7)) -> rule1)) -> rule5))]
("Charlie" "is" "big" "+")
((triple6 triple4) -> (rule4 % int1))
Charlie is big.
("Charlie" "is" "big" "+")
int1
((((triple4 triple7) -> (rule1 % int2))) -> (rule5 % int1))
Charlie is big.
("Charlie" "is" "big" "+")
int1
Charlie is green.
("Charlie" "is" "green" "+")
int2
((((triple4 ((triple4) -> (rule7 % int3))) -> (rule1 % int2))) -> (rule5 % int1))
Charlie is big.
("Charlie" "is" "big" "+")
int1
Charlie is green.
("Charlie" "is" "green" "+")
int2
Charlie is rough.
("Charlie" "is" "rough" "+")
int3
Charlie is not green.
False
3
inv-proof
[(((triple4 triple7) -> rule1) OR ((triple4 ((triple4) -> rule7)) -> rule1))]
("Charlie" "is" "green" "-")
((triple4 triple7) -> (rule1 % int1))
Charlie is green.
("Charlie" "is" "green" "+")
int1
((triple4 ((triple4) -> (rule7 % int2))) -> (rule1 % int1))
Charlie is green.
("Charlie" "is" "green" "+")
int1
Charlie is rough.
("Charlie" "is" "rough" "+")
int2
Gary is green.
True
4
proof
[(((triple15 ((triple15) -> rule7)) -> rule1))]
("Gary" "is" "green" "+")
((triple15 ((triple15) -> (rule7 % int2))) -> (rule1 % int1))
Gary is green.
("Gary" "is" "green" "+")
int1
Gary is rough.
("Gary" "is" "rough" "+")
int2
Gary is not green.
False
4
inv-proof
[(((triple15 ((triple15) -> rule7)) -> rule1))]
("Gary" "is" "green" "-")
((triple15 ((triple15) -> (rule7 % int2))) -> (rule1 % int1))
Gary is green.
("Gary" "is" "green" "+")
int1
Gary is rough.
("Gary" "is" "rough" "+")
int2
Gary is big.
True
5
proof
[(((((triple15 ((triple15) -> rule7)) -> rule1)) -> rule5))]
("Gary" "is" "big" "+")
((((triple15 ((triple15) -> (rule7 % int3))) -> (rule1 % int2))) -> (rule5 % int1))
Gary is big.
("Gary" "is" "big" "+")
int1
Gary is green.
("Gary" "is" "green" "+")
int2
Gary is rough.
("Gary" "is" "rough" "+")
int3
Gary is not big.
False
5
inv-proof
[(((((triple15 ((triple15) -> rule7)) -> rule1)) -> rule5))]
("Gary" "is" "big" "-")
((((triple15 ((triple15) -> (rule7 % int3))) -> (rule1 % int2))) -> (rule5 % int1))
Gary is big.
("Gary" "is" "big" "+")
int1
Gary is green.
("Gary" "is" "green" "+")
int2
Gary is rough.
("Gary" "is" "rough" "+")
int3
Anne is not young.
Unknown
inv-rconc
[@1: Anne is young.[CWA. Example of deepest failure = (rule6 <- FAIL)]]
("Anne" "is" "young" "-")
Anne is blue.
Unknown
rconc
[@1: Anne is blue.[CWA. Example of deepest failure = (rule3 <- FAIL)]]
("Anne" "is" "blue" "+")
Gary is not quiet.
Unknown
inv-random
[@0: Gary is quiet.[CWA. Example of deepest failure = (FAIL)]]
("Gary" "is" "quiet" "-")
Anne is quiet.
Unknown
random
[@0: Anne is quiet.[CWA. Example of deepest failure = (FAIL)]]
("Anne" "is" "quiet" "+")
Gary is not furry.
Unknown
inv-random
[@0: Gary is furry.[CWA. Example of deepest failure = (FAIL)]]
("Gary" "is" "furry" "-")
Erin is quiet.
Unknown
random
[@0: Erin is quiet.[CWA. Example of deepest failure = (FAIL)]]
("Erin" "is" "quiet" "+")
@0: Anne is furry.[(triple1)] Anne is green.[(triple2)] Anne is rough.[(triple3)] Charlie is blue.[(triple4)] Charlie is furry.[(triple5)] Charlie is quiet.[(triple6)] Charlie is rough.[(triple7 OR ((triple4) -> rule7))] Charlie is young.[(triple8 OR ((triple6) -> rule6))] Erin is big.[(triple9 OR ((triple12) -> rule5) OR ((((triple10 triple13) -> rule1)) -> rule5) OR ((((triple10 ((triple10) -> rule7)) -> rule1)) -> rule5))] Erin is blue.[(triple10)] Erin is furry.[(triple11)] Erin is green.[(triple12 OR ((triple10 triple13) -> rule1) OR ((triple10 ((triple10) -> rule7)) -> rule1))] Erin is rough.[(triple13 OR ((triple10) -> rule7))] Erin is young.[(triple14)] Gary is blue.[(triple15)] Gary is young.[(triple16)] @1: Anne is big.[(((triple2) -> rule5))] Charlie is big.[(((triple6 triple4) -> rule4) OR ((((triple4 triple7) -> rule1)) -> rule5) OR ((((triple4 ((triple4) -> rule7)) -> rule1)) -> rule5))] Charlie is green.[(((triple4 triple7) -> rule1) OR ((triple4 ((triple4) -> rule7)) -> rule1))] Gary is rough.[(((triple15) -> rule7))] @2: Gary is green.[(((triple15 ((triple15) -> rule7)) -> rule1))] @3: Gary is big.[(((((triple15 ((triple15) -> rule7)) -> rule1)) -> rule5))]
Anne is furry.
("Anne" "is" "furry" "+")
triple1
Anne is green.
("Anne" "is" "green" "+")
triple2
Anne is rough.
("Anne" "is" "rough" "+")
triple3
Charlie is blue.
("Charlie" "is" "blue" "+")
triple4
Charlie is furry.
("Charlie" "is" "furry" "+")
triple5
Charlie is quiet.
("Charlie" "is" "quiet" "+")
triple6
Charlie is rough.
("Charlie" "is" "rough" "+")
triple7
((triple4) -> (rule7 % int1))
Charlie is rough.
("Charlie" "is" "rough" "+")
int1
Charlie is young.
("Charlie" "is" "young" "+")
triple8
((triple6) -> (rule6 % int1))
Charlie is young.
("Charlie" "is" "young" "+")
int1
Erin is big.
("Erin" "is" "big" "+")
triple9
((triple12) -> (rule5 % int1))
Erin is big.
("Erin" "is" "big" "+")
int1
((((triple10 triple13) -> (rule1 % int2))) -> (rule5 % int1))
Erin is big.
("Erin" "is" "big" "+")
int1
Erin is green.
("Erin" "is" "green" "+")
int2
((((triple10 ((triple10) -> (rule7 % int3))) -> (rule1 % int2))) -> (rule5 % int1))
Erin is big.
("Erin" "is" "big" "+")
int1
Erin is green.
("Erin" "is" "green" "+")
int2
Erin is rough.
("Erin" "is" "rough" "+")
int3
Erin is blue.
("Erin" "is" "blue" "+")
triple10
Erin is furry.
("Erin" "is" "furry" "+")
triple11
Erin is green.
("Erin" "is" "green" "+")
triple12
((triple10 triple13) -> (rule1 % int1))
Erin is green.
("Erin" "is" "green" "+")
int1
((triple10 ((triple10) -> (rule7 % int2))) -> (rule1 % int1))
Erin is green.
("Erin" "is" "green" "+")
int1
Erin is rough.
("Erin" "is" "rough" "+")
int2
Erin is rough.
("Erin" "is" "rough" "+")
triple13
((triple10) -> (rule7 % int1))
Erin is rough.
("Erin" "is" "rough" "+")
int1
Erin is young.
("Erin" "is" "young" "+")
triple14
Gary is blue.
("Gary" "is" "blue" "+")
triple15
Gary is young.
("Gary" "is" "young" "+")
triple16
Anne is big.
("Anne" "is" "big" "+")
((triple2) -> (rule5 % int1))
Anne is big.
("Anne" "is" "big" "+")
int1
Charlie is big.
("Charlie" "is" "big" "+")
((triple6 triple4) -> (rule4 % int1))
Charlie is big.
("Charlie" "is" "big" "+")
int1
((((triple4 triple7) -> (rule1 % int2))) -> (rule5 % int1))
Charlie is big.
("Charlie" "is" "big" "+")
int1
Charlie is green.
("Charlie" "is" "green" "+")
int2
((((triple4 ((triple4) -> (rule7 % int3))) -> (rule1 % int2))) -> (rule5 % int1))
Charlie is big.
("Charlie" "is" "big" "+")
int1
Charlie is green.
("Charlie" "is" "green" "+")
int2
Charlie is rough.
("Charlie" "is" "rough" "+")
int3
Charlie is green.
("Charlie" "is" "green" "+")
((triple4 triple7) -> (rule1 % int1))
Charlie is green.
("Charlie" "is" "green" "+")
int1
((triple4 ((triple4) -> (rule7 % int2))) -> (rule1 % int1))
Charlie is green.
("Charlie" "is" "green" "+")
int1
Charlie is rough.
("Charlie" "is" "rough" "+")
int2
Gary is rough.
("Gary" "is" "rough" "+")
((triple15) -> (rule7 % int1))
Gary is rough.
("Gary" "is" "rough" "+")
int1
Gary is green.
("Gary" "is" "green" "+")
((triple15 ((triple15) -> (rule7 % int2))) -> (rule1 % int1))
Gary is green.
("Gary" "is" "green" "+")
int1
Gary is rough.
("Gary" "is" "rough" "+")
int2
Gary is big.
("Gary" "is" "big" "+")
((((triple15 ((triple15) -> (rule7 % int3))) -> (rule1 % int2))) -> (rule5 % int1))
Gary is big.
("Gary" "is" "big" "+")
int1
Gary is green.
("Gary" "is" "green" "+")
int2
Gary is rough.
("Gary" "is" "rough" "+")
int3