Charlie is kind. Charlie is not red. Fiona is not nice. Fiona is red. Gary is not quiet. Harry is not furry. Harry is kind. Harry is quiet. Harry is rough. Harry is white. All kind things are rough. Nice things are quiet. Rough things are quiet. If something is red then it is furry. All furry things are white. Furry, white things are kind. All furry, white things are kind.
Charlie is kind.
("Charlie" "is" "kind" "+")
Charlie is not red.
("Charlie" "is" "red" "-")
Fiona is not nice.
("Fiona" "is" "nice" "-")
Fiona is red.
("Fiona" "is" "red" "+")
Gary is not quiet.
("Gary" "is" "quiet" "-")
Harry is not furry.
("Harry" "is" "furry" "-")
Harry is kind.
("Harry" "is" "kind" "+")
Harry is quiet.
("Harry" "is" "quiet" "+")
Harry is rough.
("Harry" "is" "rough" "+")
Harry is white.
("Harry" "is" "white" "+")
All kind things are rough.
((("something" "is" "kind" "+")) -> ("something" "is" "rough" "+"))
Nice things are quiet.
((("something" "is" "nice" "+")) -> ("something" "is" "quiet" "+"))
Rough things are quiet.
((("something" "is" "rough" "+")) -> ("something" "is" "quiet" "+"))
If something is red then it is furry.
((("something" "is" "red" "+")) -> ("something" "is" "furry" "+"))
All furry things are white.
((("something" "is" "furry" "+")) -> ("something" "is" "white" "+"))
Furry, white things are kind.
((("something" "is" "furry" "+") ("something" "is" "white" "+")) -> ("something" "is" "kind" "+"))
All furry, white things are kind.
((("something" "is" "furry" "+") ("something" "is" "white" "+")) -> ("something" "is" "kind" "+"))
Harry is rough.
True
1
proof
[(triple9 OR ((triple7) -> rule1))]
("Harry" "is" "rough" "+")
triple9
((triple7) -> (rule1 % int1))
Harry is rough.
("Harry" "is" "rough" "+")
int1
Harry is not white.
False
1
inv-proof
[(triple10)]
("Harry" "is" "white" "-")
triple10
Fiona is furry.
True
2
proof
[(((triple4) -> rule4))]
("Fiona" "is" "furry" "+")
((triple4) -> (rule4 % int1))
Fiona is furry.
("Fiona" "is" "furry" "+")
int1
Charlie is not rough.
False
2
inv-proof
[(((triple1) -> rule1))]
("Charlie" "is" "rough" "-")
((triple1) -> (rule1 % int1))
Charlie is rough.
("Charlie" "is" "rough" "+")
int1
Charlie is quiet.
True
3
proof
[(((((triple1) -> rule1)) -> rule3))]
("Charlie" "is" "quiet" "+")
((((triple1) -> (rule1 % int2))) -> (rule3 % int1))
Charlie is quiet.
("Charlie" "is" "quiet" "+")
int1
Charlie is rough.
("Charlie" "is" "rough" "+")
int2
Fiona is not white.
False
3
inv-proof
[(((((triple4) -> rule4)) -> rule5))]
("Fiona" "is" "white" "-")
((((triple4) -> (rule4 % int2))) -> (rule5 % int1))
Fiona is white.
("Fiona" "is" "white" "+")
int1
Fiona is furry.
("Fiona" "is" "furry" "+")
int2
Fiona is kind.
True
6
proof
[(((((triple4) -> rule4) ((((triple4) -> rule4)) -> rule5)) -> rule6) OR ((((triple4) -> rule4) ((((triple4) -> rule4)) -> rule5)) -> rule7))]
("Fiona" "is" "kind" "+")
((((triple4) -> (rule4 % int3)) ((((triple4) -> (rule4 % int3))) -> (rule5 % int2))) -> (rule6 % int1))
Fiona is kind.
("Fiona" "is" "kind" "+")
int1
Fiona is white.
("Fiona" "is" "white" "+")
int2
Fiona is furry.
("Fiona" "is" "furry" "+")
int3
((((triple4) -> (rule4 % int3)) ((((triple4) -> (rule4 % int3))) -> (rule5 % int2))) -> (rule7 % int1))
Fiona is kind.
("Fiona" "is" "kind" "+")
int1
Fiona is white.
("Fiona" "is" "white" "+")
int2
Fiona is furry.
("Fiona" "is" "furry" "+")
int3
Fiona is not kind.
False
6
inv-proof
[(((((triple4) -> rule4) ((((triple4) -> rule4)) -> rule5)) -> rule6) OR ((((triple4) -> rule4) ((((triple4) -> rule4)) -> rule5)) -> rule7))]
("Fiona" "is" "kind" "-")
((((triple4) -> (rule4 % int3)) ((((triple4) -> (rule4 % int3))) -> (rule5 % int2))) -> (rule6 % int1))
Fiona is kind.
("Fiona" "is" "kind" "+")
int1
Fiona is white.
("Fiona" "is" "white" "+")
int2
Fiona is furry.
("Fiona" "is" "furry" "+")
int3
((((triple4) -> (rule4 % int3)) ((((triple4) -> (rule4 % int3))) -> (rule5 % int2))) -> (rule7 % int1))
Fiona is kind.
("Fiona" "is" "kind" "+")
int1
Fiona is white.
("Fiona" "is" "white" "+")
int2
Fiona is furry.
("Fiona" "is" "furry" "+")
int3
Fiona is rough.
True
7
proof
[(((((((triple4) -> rule4) ((((triple4) -> rule4)) -> rule5)) -> rule6)) -> rule1) OR ((((((triple4) -> rule4) ((((triple4) -> rule4)) -> rule5)) -> rule7)) -> rule1))]
("Fiona" "is" "rough" "+")
((((((triple4) -> (rule4 % int4)) ((((triple4) -> (rule4 % int4))) -> (rule5 % int3))) -> (rule6 % int2))) -> (rule1 % int1))
Fiona is rough.
("Fiona" "is" "rough" "+")
int1
Fiona is kind.
("Fiona" "is" "kind" "+")
int2
Fiona is white.
("Fiona" "is" "white" "+")
int3
Fiona is furry.
("Fiona" "is" "furry" "+")
int4
((((((triple4) -> (rule4 % int4)) ((((triple4) -> (rule4 % int4))) -> (rule5 % int3))) -> (rule7 % int2))) -> (rule1 % int1))
Fiona is rough.
("Fiona" "is" "rough" "+")
int1
Fiona is kind.
("Fiona" "is" "kind" "+")
int2
Fiona is white.
("Fiona" "is" "white" "+")
int3
Fiona is furry.
("Fiona" "is" "furry" "+")
int4
Fiona is not rough.
False
7
inv-proof
[(((((((triple4) -> rule4) ((((triple4) -> rule4)) -> rule5)) -> rule6)) -> rule1) OR ((((((triple4) -> rule4) ((((triple4) -> rule4)) -> rule5)) -> rule7)) -> rule1))]
("Fiona" "is" "rough" "-")
((((((triple4) -> (rule4 % int4)) ((((triple4) -> (rule4 % int4))) -> (rule5 % int3))) -> (rule6 % int2))) -> (rule1 % int1))
Fiona is rough.
("Fiona" "is" "rough" "+")
int1
Fiona is kind.
("Fiona" "is" "kind" "+")
int2
Fiona is white.
("Fiona" "is" "white" "+")
int3
Fiona is furry.
("Fiona" "is" "furry" "+")
int4
((((((triple4) -> (rule4 % int4)) ((((triple4) -> (rule4 % int4))) -> (rule5 % int3))) -> (rule7 % int2))) -> (rule1 % int1))
Fiona is rough.
("Fiona" "is" "rough" "+")
int1
Fiona is kind.
("Fiona" "is" "kind" "+")
int2
Fiona is white.
("Fiona" "is" "white" "+")
int3
Fiona is furry.
("Fiona" "is" "furry" "+")
int4
Fiona is quiet.
True
8
proof
[(((((((((triple4) -> rule4) ((((triple4) -> rule4)) -> rule5)) -> rule6)) -> rule1)) -> rule3) OR ((((((((triple4) -> rule4) ((((triple4) -> rule4)) -> rule5)) -> rule7)) -> rule1)) -> rule3))]
("Fiona" "is" "quiet" "+")
((((((((triple4) -> (rule4 % int5)) ((((triple4) -> (rule4 % int5))) -> (rule5 % int4))) -> (rule6 % int3))) -> (rule1 % int2))) -> (rule3 % int1))
Fiona is quiet.
("Fiona" "is" "quiet" "+")
int1
Fiona is rough.
("Fiona" "is" "rough" "+")
int2
Fiona is kind.
("Fiona" "is" "kind" "+")
int3
Fiona is white.
("Fiona" "is" "white" "+")
int4
Fiona is furry.
("Fiona" "is" "furry" "+")
int5
((((((((triple4) -> (rule4 % int5)) ((((triple4) -> (rule4 % int5))) -> (rule5 % int4))) -> (rule7 % int3))) -> (rule1 % int2))) -> (rule3 % int1))
Fiona is quiet.
("Fiona" "is" "quiet" "+")
int1
Fiona is rough.
("Fiona" "is" "rough" "+")
int2
Fiona is kind.
("Fiona" "is" "kind" "+")
int3
Fiona is white.
("Fiona" "is" "white" "+")
int4
Fiona is furry.
("Fiona" "is" "furry" "+")
int5
Fiona is not quiet.
False
8
inv-proof
[(((((((((triple4) -> rule4) ((((triple4) -> rule4)) -> rule5)) -> rule6)) -> rule1)) -> rule3) OR ((((((((triple4) -> rule4) ((((triple4) -> rule4)) -> rule5)) -> rule7)) -> rule1)) -> rule3))]
("Fiona" "is" "quiet" "-")
((((((((triple4) -> (rule4 % int5)) ((((triple4) -> (rule4 % int5))) -> (rule5 % int4))) -> (rule6 % int3))) -> (rule1 % int2))) -> (rule3 % int1))
Fiona is quiet.
("Fiona" "is" "quiet" "+")
int1
Fiona is rough.
("Fiona" "is" "rough" "+")
int2
Fiona is kind.
("Fiona" "is" "kind" "+")
int3
Fiona is white.
("Fiona" "is" "white" "+")
int4
Fiona is furry.
("Fiona" "is" "furry" "+")
int5
((((((((triple4) -> (rule4 % int5)) ((((triple4) -> (rule4 % int5))) -> (rule5 % int4))) -> (rule7 % int3))) -> (rule1 % int2))) -> (rule3 % int1))
Fiona is quiet.
("Fiona" "is" "quiet" "+")
int1
Fiona is rough.
("Fiona" "is" "rough" "+")
int2
Fiona is kind.
("Fiona" "is" "kind" "+")
int3
Fiona is white.
("Fiona" "is" "white" "+")
int4
Fiona is furry.
("Fiona" "is" "furry" "+")
int5
Charlie is not white.
Unknown
inv-rconc
[@2: Charlie is white.[CWA. Example of deepest failure = (rule5 <- rule4 <- FAIL)]]
("Charlie" "is" "white" "-")
Gary is white.
Unknown
rconc
[@2: Gary is white.[CWA. Example of deepest failure = (rule5 <- rule4 <- FAIL)]]
("Gary" "is" "white" "+")
Gary is not rough.
Unknown
inv-rconc
[@3: Gary is rough.[CWA. Example of deepest failure = (rule1 <- rule6 <- rule4 <- FAIL)]]
("Gary" "is" "rough" "-")
Gary is kind.
Unknown
rconc
[@2: Gary is kind.[CWA. Example of deepest failure = (rule6 <- rule4 <- FAIL)]]
("Gary" "is" "kind" "+")
Charlie is not furry.
Unknown
inv-rconc
[@1: Charlie is furry.[CWA. Example of deepest failure = (rule4 <- FAIL)]]
("Charlie" "is" "furry" "-")
Gary is furry.
Unknown
rconc
[@1: Gary is furry.[CWA. Example of deepest failure = (rule4 <- FAIL)]]
("Gary" "is" "furry" "+")
Gary is not nice.
Unknown
inv-random
[@0: Gary is nice.[CWA. Example of deepest failure = (FAIL)]]
("Gary" "is" "nice" "-")
Harry is red.
Unknown
random
[@0: Harry is red.[CWA. Example of deepest failure = (FAIL)]]
("Harry" "is" "red" "+")
Gary is not red.
Unknown
inv-random
[@0: Gary is red.[CWA. Example of deepest failure = (FAIL)]]
("Gary" "is" "red" "-")
Harry is nice.
Unknown
random
[@0: Harry is nice.[CWA. Example of deepest failure = (FAIL)]]
("Harry" "is" "nice" "+")
@0: Charlie is kind.[(triple1)] Charlie is not red.[(triple2)] Fiona is not nice.[(triple3)] Fiona is red.[(triple4)] Gary is not quiet.[(triple5)] Harry is kind.[(triple7)] Harry is not furry.[(triple6)] Harry is quiet.[(triple8 OR ((triple9) -> rule3) OR ((((triple7) -> rule1)) -> rule3))] Harry is rough.[(triple9 OR ((triple7) -> rule1))] Harry is white.[(triple10)] @1: Charlie is rough.[(((triple1) -> rule1))] Fiona is furry.[(((triple4) -> rule4))] @2: Charlie is quiet.[(((((triple1) -> rule1)) -> rule3))] Fiona is white.[(((((triple4) -> rule4)) -> rule5))] @3: Fiona is kind.[(((((triple4) -> rule4) ((((triple4) -> rule4)) -> rule5)) -> rule6) OR ((((triple4) -> rule4) ((((triple4) -> rule4)) -> rule5)) -> rule7))] @4: Fiona is rough.[(((((((triple4) -> rule4) ((((triple4) -> rule4)) -> rule5)) -> rule6)) -> rule1) OR ((((((triple4) -> rule4) ((((triple4) -> rule4)) -> rule5)) -> rule7)) -> rule1))] @5: Fiona is quiet.[(((((((((triple4) -> rule4) ((((triple4) -> rule4)) -> rule5)) -> rule6)) -> rule1)) -> rule3) OR ((((((((triple4) -> rule4) ((((triple4) -> rule4)) -> rule5)) -> rule7)) -> rule1)) -> rule3))]
Charlie is kind.
("Charlie" "is" "kind" "+")
triple1
Charlie is not red.
("Charlie" "is" "red" "-")
triple2
Fiona is not nice.
("Fiona" "is" "nice" "-")
triple3
Fiona is red.
("Fiona" "is" "red" "+")
triple4
Gary is not quiet.
("Gary" "is" "quiet" "-")
triple5
Harry is kind.
("Harry" "is" "kind" "+")
triple7
Harry is not furry.
("Harry" "is" "furry" "-")
triple6
Harry is quiet.
("Harry" "is" "quiet" "+")
triple8
((triple9) -> (rule3 % int1))
Harry is quiet.
("Harry" "is" "quiet" "+")
int1
((((triple7) -> (rule1 % int2))) -> (rule3 % int1))
Harry is quiet.
("Harry" "is" "quiet" "+")
int1
Harry is rough.
("Harry" "is" "rough" "+")
int2
Harry is rough.
("Harry" "is" "rough" "+")
triple9
((triple7) -> (rule1 % int1))
Harry is rough.
("Harry" "is" "rough" "+")
int1
Harry is white.
("Harry" "is" "white" "+")
triple10
Charlie is rough.
("Charlie" "is" "rough" "+")
((triple1) -> (rule1 % int1))
Charlie is rough.
("Charlie" "is" "rough" "+")
int1
Fiona is furry.
("Fiona" "is" "furry" "+")
((triple4) -> (rule4 % int1))
Fiona is furry.
("Fiona" "is" "furry" "+")
int1
Charlie is quiet.
("Charlie" "is" "quiet" "+")
((((triple1) -> (rule1 % int2))) -> (rule3 % int1))
Charlie is quiet.
("Charlie" "is" "quiet" "+")
int1
Charlie is rough.
("Charlie" "is" "rough" "+")
int2
Fiona is white.
("Fiona" "is" "white" "+")
((((triple4) -> (rule4 % int2))) -> (rule5 % int1))
Fiona is white.
("Fiona" "is" "white" "+")
int1
Fiona is furry.
("Fiona" "is" "furry" "+")
int2
Fiona is kind.
("Fiona" "is" "kind" "+")
((((triple4) -> (rule4 % int3)) ((((triple4) -> (rule4 % int3))) -> (rule5 % int2))) -> (rule6 % int1))
Fiona is kind.
("Fiona" "is" "kind" "+")
int1
Fiona is white.
("Fiona" "is" "white" "+")
int2
Fiona is furry.
("Fiona" "is" "furry" "+")
int3
((((triple4) -> (rule4 % int3)) ((((triple4) -> (rule4 % int3))) -> (rule5 % int2))) -> (rule7 % int1))
Fiona is kind.
("Fiona" "is" "kind" "+")
int1
Fiona is white.
("Fiona" "is" "white" "+")
int2
Fiona is furry.
("Fiona" "is" "furry" "+")
int3
Fiona is rough.
("Fiona" "is" "rough" "+")
((((((triple4) -> (rule4 % int4)) ((((triple4) -> (rule4 % int4))) -> (rule5 % int3))) -> (rule6 % int2))) -> (rule1 % int1))
Fiona is rough.
("Fiona" "is" "rough" "+")
int1
Fiona is kind.
("Fiona" "is" "kind" "+")
int2
Fiona is white.
("Fiona" "is" "white" "+")
int3
Fiona is furry.
("Fiona" "is" "furry" "+")
int4
((((((triple4) -> (rule4 % int4)) ((((triple4) -> (rule4 % int4))) -> (rule5 % int3))) -> (rule7 % int2))) -> (rule1 % int1))
Fiona is rough.
("Fiona" "is" "rough" "+")
int1
Fiona is kind.
("Fiona" "is" "kind" "+")
int2
Fiona is white.
("Fiona" "is" "white" "+")
int3
Fiona is furry.
("Fiona" "is" "furry" "+")
int4
Fiona is quiet.
("Fiona" "is" "quiet" "+")
((((((((triple4) -> (rule4 % int5)) ((((triple4) -> (rule4 % int5))) -> (rule5 % int4))) -> (rule6 % int3))) -> (rule1 % int2))) -> (rule3 % int1))
Fiona is quiet.
("Fiona" "is" "quiet" "+")
int1
Fiona is rough.
("Fiona" "is" "rough" "+")
int2
Fiona is kind.
("Fiona" "is" "kind" "+")
int3
Fiona is white.
("Fiona" "is" "white" "+")
int4
Fiona is furry.
("Fiona" "is" "furry" "+")
int5
((((((((triple4) -> (rule4 % int5)) ((((triple4) -> (rule4 % int5))) -> (rule5 % int4))) -> (rule7 % int3))) -> (rule1 % int2))) -> (rule3 % int1))
Fiona is quiet.
("Fiona" "is" "quiet" "+")
int1
Fiona is rough.
("Fiona" "is" "rough" "+")
int2
Fiona is kind.
("Fiona" "is" "kind" "+")
int3
Fiona is white.
("Fiona" "is" "white" "+")
int4
Fiona is furry.
("Fiona" "is" "furry" "+")
int5