Charlie is green. Dave is not green. Dave is kind. Dave is red. Fiona is blue. Fiona is not kind. Gary is quiet. If Fiona is young then Fiona is not red. All green people are blue. If someone is young then they are blue. All blue people are young. All young people are not red. If Charlie is not red then Charlie is nice. Nice, green people are not kind.
Charlie is green.
("Charlie" "is" "green" "+")
Dave is not green.
("Dave" "is" "green" "-")
Dave is kind.
("Dave" "is" "kind" "+")
Dave is red.
("Dave" "is" "red" "+")
Fiona is blue.
("Fiona" "is" "blue" "+")
Fiona is not kind.
("Fiona" "is" "kind" "-")
Gary is quiet.
("Gary" "is" "quiet" "+")
If Fiona is young then Fiona is not red.
((("Fiona" "is" "young" "+")) -> ("Fiona" "is" "red" "-"))
All green people are blue.
((("someone" "is" "green" "+")) -> ("someone" "is" "blue" "+"))
If someone is young then they are blue.
((("someone" "is" "young" "+")) -> ("someone" "is" "blue" "+"))
All blue people are young.
((("someone" "is" "blue" "+")) -> ("someone" "is" "young" "+"))
All young people are not red.
((("someone" "is" "young" "+")) -> ("someone" "is" "red" "-"))
If Charlie is not red then Charlie is nice.
((("Charlie" "is" "red" "~")) -> ("Charlie" "is" "nice" "+"))
Nice, green people are not kind.
((("someone" "is" "nice" "+") ("someone" "is" "green" "+")) -> ("someone" "is" "kind" "-"))
Fiona is blue.
True
1
proof
[(triple5)]
("Fiona" "is" "blue" "+")
triple5
Gary is not quiet.
False
1
inv-proof
[(triple7)]
("Gary" "is" "quiet" "-")
triple7
Charlie is blue.
True
2
proof
[(((triple1) -> rule2))]
("Charlie" "is" "blue" "+")
((triple1) -> (rule2 % int1))
Charlie is blue.
("Charlie" "is" "blue" "+")
int1
Fiona is not young.
False
2
inv-proof
[(((triple5) -> rule4))]
("Fiona" "is" "young" "-")
((triple5) -> (rule4 % int1))
Fiona is young.
("Fiona" "is" "young" "+")
int1
Fiona is not red.
True
3
proof
[(((((triple5) -> rule4)) -> rule1) OR ((((triple5) -> rule4)) -> rule5))]
("Fiona" "is" "red" "-")
((((triple5) -> (rule4 % int2))) -> (rule1 % int1))
Fiona is not red.
("Fiona" "is" "red" "-")
int1
Fiona is young.
("Fiona" "is" "young" "+")
int2
((((triple5) -> (rule4 % int2))) -> (rule5 % int1))
Fiona is not red.
("Fiona" "is" "red" "-")
int1
Fiona is young.
("Fiona" "is" "young" "+")
int2
Fiona is red.
False
3
inv-proof
[(((((triple5) -> rule4)) -> rule1) OR ((((triple5) -> rule4)) -> rule5))]
("Fiona" "is" "red" "+")
((((triple5) -> (rule4 % int2))) -> (rule1 % int1))
Fiona is not red.
("Fiona" "is" "red" "-")
int1
Fiona is young.
("Fiona" "is" "young" "+")
int2
((((triple5) -> (rule4 % int2))) -> (rule5 % int1))
Fiona is not red.
("Fiona" "is" "red" "-")
int1
Fiona is young.
("Fiona" "is" "young" "+")
int2
Charlie is not red.
True
4
proof
[(((((((triple1) -> rule2)) -> rule4)) -> rule5))]
("Charlie" "is" "red" "-")
((((((triple1) -> (rule2 % int3))) -> (rule4 % int2))) -> (rule5 % int1))
Charlie is not red.
("Charlie" "is" "red" "-")
int1
Charlie is young.
("Charlie" "is" "young" "+")
int2
Charlie is blue.
("Charlie" "is" "blue" "+")
int3
Charlie is red.
False
4
inv-proof
[(((((((triple1) -> rule2)) -> rule4)) -> rule5))]
("Charlie" "is" "red" "+")
((((((triple1) -> (rule2 % int3))) -> (rule4 % int2))) -> (rule5 % int1))
Charlie is not red.
("Charlie" "is" "red" "-")
int1
Charlie is young.
("Charlie" "is" "young" "+")
int2
Charlie is blue.
("Charlie" "is" "blue" "+")
int3
Charlie is nice.
True
5
proof
[(((((((((triple1) -> rule2)) -> rule4)) -> rule5)) -> rule6))]
("Charlie" "is" "nice" "+")
((((((((triple1) -> (rule2 % int4))) -> (rule4 % int3))) -> (rule5 % int2))) -> (rule6 % int1))
Charlie is nice.
("Charlie" "is" "nice" "+")
int1
Charlie is not red.
("Charlie" "is" "red" "-")
int2
Charlie is young.
("Charlie" "is" "young" "+")
int3
Charlie is blue.
("Charlie" "is" "blue" "+")
int4
Charlie is not nice.
False
5
inv-proof
[(((((((((triple1) -> rule2)) -> rule4)) -> rule5)) -> rule6))]
("Charlie" "is" "nice" "-")
((((((((triple1) -> (rule2 % int4))) -> (rule4 % int3))) -> (rule5 % int2))) -> (rule6 % int1))
Charlie is nice.
("Charlie" "is" "nice" "+")
int1
Charlie is not red.
("Charlie" "is" "red" "-")
int2
Charlie is young.
("Charlie" "is" "young" "+")
int3
Charlie is blue.
("Charlie" "is" "blue" "+")
int4
Charlie is not kind.
True
7
proof
[(((((((((((triple1) -> rule2)) -> rule4)) -> rule5)) -> rule6) triple1) -> rule7))]
("Charlie" "is" "kind" "-")
((((((((((triple1) -> (rule2 % int5))) -> (rule4 % int4))) -> (rule5 % int3))) -> (rule6 % int2)) triple1) -> (rule7 % int1))
Charlie is not kind.
("Charlie" "is" "kind" "-")
int1
Charlie is nice.
("Charlie" "is" "nice" "+")
int2
Charlie is not red.
("Charlie" "is" "red" "-")
int3
Charlie is young.
("Charlie" "is" "young" "+")
int4
Charlie is blue.
("Charlie" "is" "blue" "+")
int5
Charlie is kind.
False
7
inv-proof
[(((((((((((triple1) -> rule2)) -> rule4)) -> rule5)) -> rule6) triple1) -> rule7))]
("Charlie" "is" "kind" "+")
((((((((((triple1) -> (rule2 % int5))) -> (rule4 % int4))) -> (rule5 % int3))) -> (rule6 % int2)) triple1) -> (rule7 % int1))
Charlie is not kind.
("Charlie" "is" "kind" "-")
int1
Charlie is nice.
("Charlie" "is" "nice" "+")
int2
Charlie is not red.
("Charlie" "is" "red" "-")
int3
Charlie is young.
("Charlie" "is" "young" "+")
int4
Charlie is blue.
("Charlie" "is" "blue" "+")
int5
Dave is not blue.
Unknown
inv-rconc
[@3: Dave is blue.[CWA. Example of deepest failure = (rule3 <- rule4 <- rule2 <- FAIL)]]
("Dave" "is" "blue" "-")
Gary is blue.
Unknown
rconc
[@3: Gary is blue.[CWA. Example of deepest failure = (rule3 <- rule4 <- rule2 <- FAIL)]]
("Gary" "is" "blue" "+")
Gary is not young.
Unknown
inv-rconc
[@2: Gary is young.[CWA. Example of deepest failure = (rule4 <- rule2 <- FAIL)]]
("Gary" "is" "young" "-")
Dave is young.
Unknown
rconc
[@2: Dave is young.[CWA. Example of deepest failure = (rule4 <- rule2 <- FAIL)]]
("Dave" "is" "young" "+")
Fiona is not quiet.
Unknown
inv-random
[@0: Fiona is quiet.[CWA. Example of deepest failure = (FAIL)]]
("Fiona" "is" "quiet" "-")
Gary is kind.
Unknown
random
[@0: Gary is kind.[CWA. Example of deepest failure = (FAIL)]]
("Gary" "is" "kind" "+")
Fiona is not nice.
Unknown
inv-random
[@0: Fiona is nice.[CWA. Example of deepest failure = (FAIL)]]
("Fiona" "is" "nice" "-")
Dave is quiet.
Unknown
random
[@0: Dave is quiet.[CWA. Example of deepest failure = (FAIL)]]
("Dave" "is" "quiet" "+")
Dave is not nice.
Unknown
inv-random
[@0: Dave is nice.[CWA. Example of deepest failure = (FAIL)]]
("Dave" "is" "nice" "-")
Gary is nice.
Unknown
random
[@0: Gary is nice.[CWA. Example of deepest failure = (FAIL)]]
("Gary" "is" "nice" "+")
Gary is not green.
Unknown
inv-random
[@0: Gary is green.[CWA. Example of deepest failure = (FAIL)]]
("Gary" "is" "green" "-")
Fiona is green.
Unknown
random
[@0: Fiona is green.[CWA. Example of deepest failure = (FAIL)]]
("Fiona" "is" "green" "+")
@0: Charlie is green.[(triple1)] Dave is kind.[(triple3)] Dave is not green.[(triple2)] Dave is red.[(triple4)] Fiona is blue.[(triple5)] Fiona is not kind.[(triple6)] Gary is quiet.[(triple7)] @1: Charlie is blue.[(((triple1) -> rule2))] Fiona is young.[(((triple5) -> rule4))] @2: Charlie is young.[(((((triple1) -> rule2)) -> rule4))] Fiona is not red.[(((((triple5) -> rule4)) -> rule1) OR ((((triple5) -> rule4)) -> rule5))] @3: Charlie is not red.[(((((((triple1) -> rule2)) -> rule4)) -> rule5))] @4: Charlie is nice.[(((((((((triple1) -> rule2)) -> rule4)) -> rule5)) -> rule6))] @5: Charlie is not kind.[(((((((((((triple1) -> rule2)) -> rule4)) -> rule5)) -> rule6) triple1) -> rule7))]
Charlie is green.
("Charlie" "is" "green" "+")
triple1
Dave is kind.
("Dave" "is" "kind" "+")
triple3
Dave is not green.
("Dave" "is" "green" "-")
triple2
Dave is red.
("Dave" "is" "red" "+")
triple4
Fiona is blue.
("Fiona" "is" "blue" "+")
triple5
Fiona is not kind.
("Fiona" "is" "kind" "-")
triple6
Gary is quiet.
("Gary" "is" "quiet" "+")
triple7
Charlie is blue.
("Charlie" "is" "blue" "+")
((triple1) -> (rule2 % int1))
Charlie is blue.
("Charlie" "is" "blue" "+")
int1
Fiona is young.
("Fiona" "is" "young" "+")
((triple5) -> (rule4 % int1))
Fiona is young.
("Fiona" "is" "young" "+")
int1
Charlie is young.
("Charlie" "is" "young" "+")
((((triple1) -> (rule2 % int2))) -> (rule4 % int1))
Charlie is young.
("Charlie" "is" "young" "+")
int1
Charlie is blue.
("Charlie" "is" "blue" "+")
int2
Fiona is not red.
("Fiona" "is" "red" "-")
((((triple5) -> (rule4 % int2))) -> (rule1 % int1))
Fiona is not red.
("Fiona" "is" "red" "-")
int1
Fiona is young.
("Fiona" "is" "young" "+")
int2
((((triple5) -> (rule4 % int2))) -> (rule5 % int1))
Fiona is not red.
("Fiona" "is" "red" "-")
int1
Fiona is young.
("Fiona" "is" "young" "+")
int2
Charlie is not red.
("Charlie" "is" "red" "-")
((((((triple1) -> (rule2 % int3))) -> (rule4 % int2))) -> (rule5 % int1))
Charlie is not red.
("Charlie" "is" "red" "-")
int1
Charlie is young.
("Charlie" "is" "young" "+")
int2
Charlie is blue.
("Charlie" "is" "blue" "+")
int3
Charlie is nice.
("Charlie" "is" "nice" "+")
((((((((triple1) -> (rule2 % int4))) -> (rule4 % int3))) -> (rule5 % int2))) -> (rule6 % int1))
Charlie is nice.
("Charlie" "is" "nice" "+")
int1
Charlie is not red.
("Charlie" "is" "red" "-")
int2
Charlie is young.
("Charlie" "is" "young" "+")
int3
Charlie is blue.
("Charlie" "is" "blue" "+")
int4
Charlie is not kind.
("Charlie" "is" "kind" "-")
((((((((((triple1) -> (rule2 % int5))) -> (rule4 % int4))) -> (rule5 % int3))) -> (rule6 % int2)) triple1) -> (rule7 % int1))
Charlie is not kind.
("Charlie" "is" "kind" "-")
int1
Charlie is nice.
("Charlie" "is" "nice" "+")
int2
Charlie is not red.
("Charlie" "is" "red" "-")
int3
Charlie is young.
("Charlie" "is" "young" "+")
int4
Charlie is blue.
("Charlie" "is" "blue" "+")
int5