Charlie is rough. Charlie is white. Erin is furry. Erin is rough. Gary is not kind. Harry is not furry. Harry is smart. All smart things are not kind. All rough, white things are furry. If Erin is rough and Erin is kind then Erin is white. If something is furry and rough then it is smart. If Harry is white then Harry is furry. If something is kind and not rough then it is white. Green, smart things are red. If something is smart and not kind then it is red. Red, white things are green.
Charlie is rough.
("Charlie" "is" "rough" "+")
Charlie is white.
("Charlie" "is" "white" "+")
Erin is furry.
("Erin" "is" "furry" "+")
Erin is rough.
("Erin" "is" "rough" "+")
Gary is not kind.
("Gary" "is" "kind" "-")
Harry is not furry.
("Harry" "is" "furry" "-")
Harry is smart.
("Harry" "is" "smart" "+")
All smart things are not kind.
((("something" "is" "smart" "+")) -> ("something" "is" "kind" "-"))
All rough, white things are furry.
((("something" "is" "rough" "+") ("something" "is" "white" "+")) -> ("something" "is" "furry" "+"))
If Erin is rough and Erin is kind then Erin is white.
((("Erin" "is" "rough" "+") ("Erin" "is" "kind" "+")) -> ("Erin" "is" "white" "+"))
If something is furry and rough then it is smart.
((("something" "is" "furry" "+") ("something" "is" "rough" "+")) -> ("something" "is" "smart" "+"))
If Harry is white then Harry is furry.
((("Harry" "is" "white" "+")) -> ("Harry" "is" "furry" "+"))
If something is kind and not rough then it is white.
((("something" "is" "kind" "+") ("something" "is" "rough" "~")) -> ("something" "is" "white" "+"))
Green, smart things are red.
((("something" "is" "green" "+") ("something" "is" "smart" "+")) -> ("something" "is" "red" "+"))
If something is smart and not kind then it is red.
((("something" "is" "smart" "+") ("something" "is" "kind" "~")) -> ("something" "is" "red" "+"))
Red, white things are green.
((("something" "is" "red" "+") ("something" "is" "white" "+")) -> ("something" "is" "green" "+"))
Erin is furry.
True
1
proof
[(triple3)]
("Erin" "is" "furry" "+")
triple3
Charlie is not white.
False
1
inv-proof
[(triple2)]
("Charlie" "is" "white" "-")
triple2
Erin is smart.
True
3
proof
[(((triple3 triple4) -> rule4))]
("Erin" "is" "smart" "+")
((triple3 triple4) -> (rule4 % int1))
Erin is smart.
("Erin" "is" "smart" "+")
int1
Erin is not smart.
False
3
inv-proof
[(((triple3 triple4) -> rule4))]
("Erin" "is" "smart" "-")
((triple3 triple4) -> (rule4 % int1))
Erin is smart.
("Erin" "is" "smart" "+")
int1
Charlie is smart.
True
5
proof
[(((((triple1 triple2) -> rule2) triple1) -> rule4))]
("Charlie" "is" "smart" "+")
((((triple1 triple2) -> (rule2 % int2)) triple1) -> (rule4 % int1))
Charlie is smart.
("Charlie" "is" "smart" "+")
int1
Charlie is furry.
("Charlie" "is" "furry" "+")
int2
Erin is kind.
False
4
inv-proof
[(((((triple3 triple4) -> rule4)) -> rule1))]
("Erin" "is" "kind" "+")
((((triple3 triple4) -> (rule4 % int2))) -> (rule1 % int1))
Erin is not kind.
("Erin" "is" "kind" "-")
int1
Erin is smart.
("Erin" "is" "smart" "+")
int2
Erin is red.
True
8
proof
[(((((triple3 triple4) -> rule4) ((((triple3 triple4) -> rule4)) -> rule1)) -> rule8))]
("Erin" "is" "red" "+")
((((triple3 triple4) -> (rule4 % int3)) ((((triple3 triple4) -> (rule4 % int3))) -> (rule1 % int2))) -> (rule8 % int1))
Erin is red.
("Erin" "is" "red" "+")
int1
Erin is not kind.
("Erin" "is" "kind" "-")
int2
Erin is smart.
("Erin" "is" "smart" "+")
int3
Erin is not red.
False
8
inv-proof
[(((((triple3 triple4) -> rule4) ((((triple3 triple4) -> rule4)) -> rule1)) -> rule8))]
("Erin" "is" "red" "-")
((((triple3 triple4) -> (rule4 % int3)) ((((triple3 triple4) -> (rule4 % int3))) -> (rule1 % int2))) -> (rule8 % int1))
Erin is red.
("Erin" "is" "red" "+")
int1
Erin is not kind.
("Erin" "is" "kind" "-")
int2
Erin is smart.
("Erin" "is" "smart" "+")
int3
Charlie is red.
True
12
proof
[(((((((triple1 triple2) -> rule2) triple1) -> rule4) ((((((triple1 triple2) -> rule2) triple1) -> rule4)) -> rule1)) -> rule8))]
("Charlie" "is" "red" "+")
((((((triple1 triple2) -> (rule2 % int4)) triple1) -> (rule4 % int3)) ((((((triple1 triple2) -> (rule2 % int4)) triple1) -> (rule4 % int3))) -> (rule1 % int2))) -> (rule8 % int1))
Charlie is red.
("Charlie" "is" "red" "+")
int1
Charlie is not kind.
("Charlie" "is" "kind" "-")
int2
Charlie is smart.
("Charlie" "is" "smart" "+")
int3
Charlie is furry.
("Charlie" "is" "furry" "+")
int4
Charlie is not red.
False
12
inv-proof
[(((((((triple1 triple2) -> rule2) triple1) -> rule4) ((((((triple1 triple2) -> rule2) triple1) -> rule4)) -> rule1)) -> rule8))]
("Charlie" "is" "red" "-")
((((((triple1 triple2) -> (rule2 % int4)) triple1) -> (rule4 % int3)) ((((((triple1 triple2) -> (rule2 % int4)) triple1) -> (rule4 % int3))) -> (rule1 % int2))) -> (rule8 % int1))
Charlie is red.
("Charlie" "is" "red" "+")
int1
Charlie is not kind.
("Charlie" "is" "kind" "-")
int2
Charlie is smart.
("Charlie" "is" "smart" "+")
int3
Charlie is furry.
("Charlie" "is" "furry" "+")
int4
Charlie is green.
True
14
proof
[(((((((((triple1 triple2) -> rule2) triple1) -> rule4) ((((((triple1 triple2) -> rule2) triple1) -> rule4)) -> rule1)) -> rule8) triple2) -> rule9))]
("Charlie" "is" "green" "+")
((((((((triple1 triple2) -> (rule2 % int5)) triple1) -> (rule4 % int4)) ((((((triple1 triple2) -> (rule2 % int5)) triple1) -> (rule4 % int4))) -> (rule1 % int3))) -> (rule8 % int2)) triple2) -> (rule9 % int1))
Charlie is green.
("Charlie" "is" "green" "+")
int1
Charlie is red.
("Charlie" "is" "red" "+")
int2
Charlie is not kind.
("Charlie" "is" "kind" "-")
int3
Charlie is smart.
("Charlie" "is" "smart" "+")
int4
Charlie is furry.
("Charlie" "is" "furry" "+")
int5
Charlie is not green.
False
14
inv-proof
[(((((((((triple1 triple2) -> rule2) triple1) -> rule4) ((((((triple1 triple2) -> rule2) triple1) -> rule4)) -> rule1)) -> rule8) triple2) -> rule9))]
("Charlie" "is" "green" "-")
((((((((triple1 triple2) -> (rule2 % int5)) triple1) -> (rule4 % int4)) ((((((triple1 triple2) -> (rule2 % int5)) triple1) -> (rule4 % int4))) -> (rule1 % int3))) -> (rule8 % int2)) triple2) -> (rule9 % int1))
Charlie is green.
("Charlie" "is" "green" "+")
int1
Charlie is red.
("Charlie" "is" "red" "+")
int2
Charlie is not kind.
("Charlie" "is" "kind" "-")
int3
Charlie is smart.
("Charlie" "is" "smart" "+")
int4
Charlie is furry.
("Charlie" "is" "furry" "+")
int5
Gary is not red.
Unknown
inv-rconc
[@2: Gary is red.[CWA. Example of deepest failure = (rule7 <- rule4 <- FAIL)]]
("Gary" "is" "red" "-")
Gary is green.
Unknown
rconc
[@2: Gary is green.[CWA. Example of deepest failure = (rule9 <- rule7 <- FAIL)]]
("Gary" "is" "green" "+")
Harry is not white.
Unknown
inv-rconc
[@1: Harry is white.[CWA. Example of deepest failure = (rule6 <- FAIL)]]
("Harry" "is" "white" "-")
Harry is green.
Unknown
rconc
[@2: Harry is green.[CWA. Example of deepest failure = (rule9 <- rule6 <- FAIL)]]
("Harry" "is" "green" "+")
Erin is not white.
Unknown
inv-rconc
[@1: Erin is white.[CWA. Example of deepest failure = (rule3 <- FAIL)]]
("Erin" "is" "white" "-")
Gary is white.
Unknown
rconc
[@1: Gary is white.[CWA. Example of deepest failure = (rule6 <- FAIL)]]
("Gary" "is" "white" "+")
Gary is not rough.
Unknown
inv-random
[@0: Gary is rough.[CWA. Example of deepest failure = (FAIL)]]
("Gary" "is" "rough" "-")
Harry is rough.
Unknown
random
[@0: Harry is rough.[CWA. Example of deepest failure = (FAIL)]]
("Harry" "is" "rough" "+")
@0: Charlie is rough.[(triple1)] Charlie is white.[(triple2)] Erin is furry.[(triple3)] Erin is rough.[(triple4)] Gary is not kind.[(triple5)] Harry is not furry.[(triple6)] Harry is smart.[(triple7)] @1: Charlie is furry.[(((triple1 triple2) -> rule2))] Erin is smart.[(((triple3 triple4) -> rule4))] Harry is not kind.[(((triple7) -> rule1))] @2: Charlie is smart.[(((((triple1 triple2) -> rule2) triple1) -> rule4))] Erin is not kind.[(((((triple3 triple4) -> rule4)) -> rule1))] Harry is red.[(((triple7 ((triple7) -> rule1)) -> rule8))] @3: Charlie is not kind.[(((((((triple1 triple2) -> rule2) triple1) -> rule4)) -> rule1))] Erin is red.[(((((triple3 triple4) -> rule4) ((((triple3 triple4) -> rule4)) -> rule1)) -> rule8))] @4: Charlie is red.[(((((((triple1 triple2) -> rule2) triple1) -> rule4) ((((((triple1 triple2) -> rule2) triple1) -> rule4)) -> rule1)) -> rule8))] @5: Charlie is green.[(((((((((triple1 triple2) -> rule2) triple1) -> rule4) ((((((triple1 triple2) -> rule2) triple1) -> rule4)) -> rule1)) -> rule8) triple2) -> rule9))]
Charlie is rough.
("Charlie" "is" "rough" "+")
triple1
Charlie is white.
("Charlie" "is" "white" "+")
triple2
Erin is furry.
("Erin" "is" "furry" "+")
triple3
Erin is rough.
("Erin" "is" "rough" "+")
triple4
Gary is not kind.
("Gary" "is" "kind" "-")
triple5
Harry is not furry.
("Harry" "is" "furry" "-")
triple6
Harry is smart.
("Harry" "is" "smart" "+")
triple7
Charlie is furry.
("Charlie" "is" "furry" "+")
((triple1 triple2) -> (rule2 % int1))
Charlie is furry.
("Charlie" "is" "furry" "+")
int1
Erin is smart.
("Erin" "is" "smart" "+")
((triple3 triple4) -> (rule4 % int1))
Erin is smart.
("Erin" "is" "smart" "+")
int1
Harry is not kind.
("Harry" "is" "kind" "-")
((triple7) -> (rule1 % int1))
Harry is not kind.
("Harry" "is" "kind" "-")
int1
Charlie is smart.
("Charlie" "is" "smart" "+")
((((triple1 triple2) -> (rule2 % int2)) triple1) -> (rule4 % int1))
Charlie is smart.
("Charlie" "is" "smart" "+")
int1
Charlie is furry.
("Charlie" "is" "furry" "+")
int2
Erin is not kind.
("Erin" "is" "kind" "-")
((((triple3 triple4) -> (rule4 % int2))) -> (rule1 % int1))
Erin is not kind.
("Erin" "is" "kind" "-")
int1
Erin is smart.
("Erin" "is" "smart" "+")
int2
Harry is red.
("Harry" "is" "red" "+")
((triple7 ((triple7) -> (rule1 % int2))) -> (rule8 % int1))
Harry is red.
("Harry" "is" "red" "+")
int1
Harry is not kind.
("Harry" "is" "kind" "-")
int2
Charlie is not kind.
("Charlie" "is" "kind" "-")
((((((triple1 triple2) -> (rule2 % int3)) triple1) -> (rule4 % int2))) -> (rule1 % int1))
Charlie is not kind.
("Charlie" "is" "kind" "-")
int1
Charlie is smart.
("Charlie" "is" "smart" "+")
int2
Charlie is furry.
("Charlie" "is" "furry" "+")
int3
Erin is red.
("Erin" "is" "red" "+")
((((triple3 triple4) -> (rule4 % int3)) ((((triple3 triple4) -> (rule4 % int3))) -> (rule1 % int2))) -> (rule8 % int1))
Erin is red.
("Erin" "is" "red" "+")
int1
Erin is not kind.
("Erin" "is" "kind" "-")
int2
Erin is smart.
("Erin" "is" "smart" "+")
int3
Charlie is red.
("Charlie" "is" "red" "+")
((((((triple1 triple2) -> (rule2 % int4)) triple1) -> (rule4 % int3)) ((((((triple1 triple2) -> (rule2 % int4)) triple1) -> (rule4 % int3))) -> (rule1 % int2))) -> (rule8 % int1))
Charlie is red.
("Charlie" "is" "red" "+")
int1
Charlie is not kind.
("Charlie" "is" "kind" "-")
int2
Charlie is smart.
("Charlie" "is" "smart" "+")
int3
Charlie is furry.
("Charlie" "is" "furry" "+")
int4
Charlie is green.
("Charlie" "is" "green" "+")
((((((((triple1 triple2) -> (rule2 % int5)) triple1) -> (rule4 % int4)) ((((((triple1 triple2) -> (rule2 % int5)) triple1) -> (rule4 % int4))) -> (rule1 % int3))) -> (rule8 % int2)) triple2) -> (rule9 % int1))
Charlie is green.
("Charlie" "is" "green" "+")
int1
Charlie is red.
("Charlie" "is" "red" "+")
int2
Charlie is not kind.
("Charlie" "is" "kind" "-")
int3
Charlie is smart.
("Charlie" "is" "smart" "+")
int4
Charlie is furry.
("Charlie" "is" "furry" "+")
int5