Charlie is big. Charlie is green. Charlie is young. Dave is green. Dave is kind. Dave is not red. Dave is rough. Erin is big. Erin is nice. Gary is big. Gary is not kind. Gary is young. If someone is kind then they are not nice. All big people are nice. Kind, big people are not young. If someone is green and not rough then they are young. Rough people are not young. Nice people are red. Red people are green. If Erin is green and Erin is nice then Erin is red.
Charlie is big.
("Charlie" "is" "big" "+")
Charlie is green.
("Charlie" "is" "green" "+")
Charlie is young.
("Charlie" "is" "young" "+")
Dave is green.
("Dave" "is" "green" "+")
Dave is kind.
("Dave" "is" "kind" "+")
Dave is not red.
("Dave" "is" "red" "-")
Dave is rough.
("Dave" "is" "rough" "+")
Erin is big.
("Erin" "is" "big" "+")
Erin is nice.
("Erin" "is" "nice" "+")
Gary is big.
("Gary" "is" "big" "+")
Gary is not kind.
("Gary" "is" "kind" "-")
Gary is young.
("Gary" "is" "young" "+")
If someone is kind then they are not nice.
((("someone" "is" "kind" "+")) -> ("someone" "is" "nice" "-"))
All big people are nice.
((("someone" "is" "big" "+")) -> ("someone" "is" "nice" "+"))
Kind, big people are not young.
((("someone" "is" "kind" "+") ("someone" "is" "big" "+")) -> ("someone" "is" "young" "-"))
If someone is green and not rough then they are young.
((("someone" "is" "green" "+") ("someone" "is" "rough" "~")) -> ("someone" "is" "young" "+"))
Rough people are not young.
((("someone" "is" "rough" "+")) -> ("someone" "is" "young" "-"))
Nice people are red.
((("someone" "is" "nice" "+")) -> ("someone" "is" "red" "+"))
Red people are green.
((("someone" "is" "red" "+")) -> ("someone" "is" "green" "+"))
If Erin is green and Erin is nice then Erin is red.
((("Erin" "is" "green" "+") ("Erin" "is" "nice" "+")) -> ("Erin" "is" "red" "+"))
Dave is rough.
True
1
proof
[(triple7)]
("Dave" "is" "rough" "+")
triple7
Charlie is not big.
False
1
inv-proof
[(triple1)]
("Charlie" "is" "big" "-")
triple1
Charlie is nice.
True
2
proof
[(((triple1) -> rule2))]
("Charlie" "is" "nice" "+")
((triple1) -> (rule2 % int1))
Charlie is nice.
("Charlie" "is" "nice" "+")
int1
Charlie is not nice.
False
2
inv-proof
[(((triple1) -> rule2))]
("Charlie" "is" "nice" "-")
((triple1) -> (rule2 % int1))
Charlie is nice.
("Charlie" "is" "nice" "+")
int1
Gary is red.
True
3
proof
[(((((triple10) -> rule2)) -> rule6))]
("Gary" "is" "red" "+")
((((triple10) -> (rule2 % int2))) -> (rule6 % int1))
Gary is red.
("Gary" "is" "red" "+")
int1
Gary is nice.
("Gary" "is" "nice" "+")
int2
Gary is not red.
False
3
inv-proof
[(((((triple10) -> rule2)) -> rule6))]
("Gary" "is" "red" "-")
((((triple10) -> (rule2 % int2))) -> (rule6 % int1))
Gary is red.
("Gary" "is" "red" "+")
int1
Gary is nice.
("Gary" "is" "nice" "+")
int2
Gary is green.
True
4
proof
[(((((((triple10) -> rule2)) -> rule6)) -> rule7))]
("Gary" "is" "green" "+")
((((((triple10) -> (rule2 % int3))) -> (rule6 % int2))) -> (rule7 % int1))
Gary is green.
("Gary" "is" "green" "+")
int1
Gary is red.
("Gary" "is" "red" "+")
int2
Gary is nice.
("Gary" "is" "nice" "+")
int3
Gary is not green.
False
4
inv-proof
[(((((((triple10) -> rule2)) -> rule6)) -> rule7))]
("Gary" "is" "green" "-")
((((((triple10) -> (rule2 % int3))) -> (rule6 % int2))) -> (rule7 % int1))
Gary is green.
("Gary" "is" "green" "+")
int1
Gary is red.
("Gary" "is" "red" "+")
int2
Gary is nice.
("Gary" "is" "nice" "+")
int3
Erin is not young.
Unknown
inv-rconc
[@1: Erin is young.[CWA. Example of deepest failure = (rule4 <- FAIL)]]
("Erin" "is" "young" "-")
Erin is rough.
Unknown
random
[@0: Erin is rough.[CWA. Example of deepest failure = (FAIL)]]
("Erin" "is" "rough" "+")
Charlie is not kind.
Unknown
inv-random
[@0: Charlie is kind.[CWA. Example of deepest failure = (FAIL)]]
("Charlie" "is" "kind" "-")
Erin is kind.
Unknown
random
[@0: Erin is kind.[CWA. Example of deepest failure = (FAIL)]]
("Erin" "is" "kind" "+")
Charlie is not rough.
Unknown
inv-random
[@0: Charlie is rough.[CWA. Example of deepest failure = (FAIL)]]
("Charlie" "is" "rough" "-")
Gary is rough.
Unknown
random
[@0: Gary is rough.[CWA. Example of deepest failure = (FAIL)]]
("Gary" "is" "rough" "+")
@0: Charlie is big.[(triple1)] Charlie is green.[(triple2 OR ((((((triple1) -> rule2)) -> rule6)) -> rule7))] Charlie is young.[(triple3)] Dave is green.[(triple4)] Dave is kind.[(triple5)] Dave is not red.[(triple6)] Dave is rough.[(triple7)] Erin is big.[(triple8)] Erin is nice.[(triple9 OR ((triple8) -> rule2))] Gary is big.[(triple10)] Gary is not kind.[(triple11)] Gary is young.[(triple12)] @1: Charlie is nice.[(((triple1) -> rule2))] Dave is not nice.[(((triple5) -> rule1))] Dave is not young.[(((triple7) -> rule5))] Erin is red.[(((triple9) -> rule6) OR ((((triple8) -> rule2)) -> rule6))] Gary is nice.[(((triple10) -> rule2))] @2: Charlie is red.[(((((triple1) -> rule2)) -> rule6))] Erin is green.[(((((triple9) -> rule6)) -> rule7) OR ((((((triple8) -> rule2)) -> rule6)) -> rule7))] Gary is red.[(((((triple10) -> rule2)) -> rule6))] @3: Gary is green.[(((((((triple10) -> rule2)) -> rule6)) -> rule7))]
Charlie is big.
("Charlie" "is" "big" "+")
triple1
Charlie is green.
("Charlie" "is" "green" "+")
triple2
((((((triple1) -> (rule2 % int3))) -> (rule6 % int2))) -> (rule7 % int1))
Charlie is green.
("Charlie" "is" "green" "+")
int1
Charlie is red.
("Charlie" "is" "red" "+")
int2
Charlie is nice.
("Charlie" "is" "nice" "+")
int3
Charlie is young.
("Charlie" "is" "young" "+")
triple3
Dave is green.
("Dave" "is" "green" "+")
triple4
Dave is kind.
("Dave" "is" "kind" "+")
triple5
Dave is not red.
("Dave" "is" "red" "-")
triple6
Dave is rough.
("Dave" "is" "rough" "+")
triple7
Erin is big.
("Erin" "is" "big" "+")
triple8
Erin is nice.
("Erin" "is" "nice" "+")
triple9
((triple8) -> (rule2 % int1))
Erin is nice.
("Erin" "is" "nice" "+")
int1
Gary is big.
("Gary" "is" "big" "+")
triple10
Gary is not kind.
("Gary" "is" "kind" "-")
triple11
Gary is young.
("Gary" "is" "young" "+")
triple12
Charlie is nice.
("Charlie" "is" "nice" "+")
((triple1) -> (rule2 % int1))
Charlie is nice.
("Charlie" "is" "nice" "+")
int1
Dave is not nice.
("Dave" "is" "nice" "-")
((triple5) -> (rule1 % int1))
Dave is not nice.
("Dave" "is" "nice" "-")
int1
Dave is not young.
("Dave" "is" "young" "-")
((triple7) -> (rule5 % int1))
Dave is not young.
("Dave" "is" "young" "-")
int1
Erin is red.
("Erin" "is" "red" "+")
((triple9) -> (rule6 % int1))
Erin is red.
("Erin" "is" "red" "+")
int1
((((triple8) -> (rule2 % int2))) -> (rule6 % int1))
Erin is red.
("Erin" "is" "red" "+")
int1
Erin is nice.
("Erin" "is" "nice" "+")
int2
Gary is nice.
("Gary" "is" "nice" "+")
((triple10) -> (rule2 % int1))
Gary is nice.
("Gary" "is" "nice" "+")
int1
Charlie is red.
("Charlie" "is" "red" "+")
((((triple1) -> (rule2 % int2))) -> (rule6 % int1))
Charlie is red.
("Charlie" "is" "red" "+")
int1
Charlie is nice.
("Charlie" "is" "nice" "+")
int2
Erin is green.
("Erin" "is" "green" "+")
((((triple9) -> (rule6 % int2))) -> (rule7 % int1))
Erin is green.
("Erin" "is" "green" "+")
int1
Erin is red.
("Erin" "is" "red" "+")
int2
((((((triple8) -> (rule2 % int3))) -> (rule6 % int2))) -> (rule7 % int1))
Erin is green.
("Erin" "is" "green" "+")
int1
Erin is red.
("Erin" "is" "red" "+")
int2
Erin is nice.
("Erin" "is" "nice" "+")
int3
Gary is red.
("Gary" "is" "red" "+")
((((triple10) -> (rule2 % int2))) -> (rule6 % int1))
Gary is red.
("Gary" "is" "red" "+")
int1
Gary is nice.
("Gary" "is" "nice" "+")
int2
Gary is green.
("Gary" "is" "green" "+")
((((((triple10) -> (rule2 % int3))) -> (rule6 % int2))) -> (rule7 % int1))
Gary is green.
("Gary" "is" "green" "+")
int1
Gary is red.
("Gary" "is" "red" "+")
int2
Gary is nice.
("Gary" "is" "nice" "+")
int3