Charlie is young. Harry is furry. If Charlie is young then Charlie is round. If something is round and red then it is green. Smart things are cold. If Charlie is furry then Charlie is red. Smart, red things are green. All round things are furry. Cold, round things are red. Smart things are red.
Charlie is young.
("Charlie" "is" "young" "+")
Harry is furry.
("Harry" "is" "furry" "+")
If Charlie is young then Charlie is round.
((("Charlie" "is" "young" "+")) -> ("Charlie" "is" "round" "+"))
If something is round and red then it is green.
((("something" "is" "round" "+") ("something" "is" "red" "+")) -> ("something" "is" "green" "+"))
Smart things are cold.
((("something" "is" "smart" "+")) -> ("something" "is" "cold" "+"))
If Charlie is furry then Charlie is red.
((("Charlie" "is" "furry" "+")) -> ("Charlie" "is" "red" "+"))
Smart, red things are green.
((("something" "is" "smart" "+") ("something" "is" "red" "+")) -> ("something" "is" "green" "+"))
All round things are furry.
((("something" "is" "round" "+")) -> ("something" "is" "furry" "+"))
Cold, round things are red.
((("something" "is" "cold" "+") ("something" "is" "round" "+")) -> ("something" "is" "red" "+"))
Smart things are red.
((("something" "is" "smart" "+")) -> ("something" "is" "red" "+"))
Harry is furry.
True
1
proof
[(triple2)]
("Harry" "is" "furry" "+")
triple2
Harry is not furry.
False
1
inv-proof
[(triple2)]
("Harry" "is" "furry" "-")
triple2
Charlie is round.
True
2
proof
[(((triple1) -> rule1))]
("Charlie" "is" "round" "+")
((triple1) -> (rule1 % int1))
Charlie is round.
("Charlie" "is" "round" "+")
int1
Charlie is not round.
False
2
inv-proof
[(((triple1) -> rule1))]
("Charlie" "is" "round" "-")
((triple1) -> (rule1 % int1))
Charlie is round.
("Charlie" "is" "round" "+")
int1
Charlie is furry.
True
3
proof
[(((((triple1) -> rule1)) -> rule6))]
("Charlie" "is" "furry" "+")
((((triple1) -> (rule1 % int2))) -> (rule6 % int1))
Charlie is furry.
("Charlie" "is" "furry" "+")
int1
Charlie is round.
("Charlie" "is" "round" "+")
int2
Charlie is not furry.
False
3
inv-proof
[(((((triple1) -> rule1)) -> rule6))]
("Charlie" "is" "furry" "-")
((((triple1) -> (rule1 % int2))) -> (rule6 % int1))
Charlie is furry.
("Charlie" "is" "furry" "+")
int1
Charlie is round.
("Charlie" "is" "round" "+")
int2
Charlie is not cold.
Unknown
inv-rconc
[@1: Charlie is cold.[CWA. Example of deepest failure = (rule3 <- FAIL)]]
("Charlie" "is" "cold" "-")
Harry is red.
Unknown
rconc
[@1: Harry is red.[CWA. Example of deepest failure = (rule7 <- FAIL)]]
("Harry" "is" "red" "+")
Harry is not green.
Unknown
inv-rconc
[@1: Harry is green.[CWA. Example of deepest failure = (rule2 <- FAIL)]]
("Harry" "is" "green" "-")
Harry is young.
Unknown
random
[@0: Harry is young.[CWA. Example of deepest failure = (FAIL)]]
("Harry" "is" "young" "+")
Harry is not smart.
Unknown
inv-random
[@0: Harry is smart.[CWA. Example of deepest failure = (FAIL)]]
("Harry" "is" "smart" "-")
Harry is round.
Unknown
random
[@0: Harry is round.[CWA. Example of deepest failure = (FAIL)]]
("Harry" "is" "round" "+")
@0: Charlie is young.[(triple1)] Harry is furry.[(triple2)] @1: Charlie is round.[(((triple1) -> rule1))] @2: Charlie is furry.[(((((triple1) -> rule1)) -> rule6))] @3: Charlie is red.[(((((((triple1) -> rule1)) -> rule6)) -> rule4))] @4: Charlie is green.[(((((triple1) -> rule1) ((((((triple1) -> rule1)) -> rule6)) -> rule4)) -> rule2))]
Charlie is young.
("Charlie" "is" "young" "+")
triple1
Harry is furry.
("Harry" "is" "furry" "+")
triple2
Charlie is round.
("Charlie" "is" "round" "+")
((triple1) -> (rule1 % int1))
Charlie is round.
("Charlie" "is" "round" "+")
int1
Charlie is furry.
("Charlie" "is" "furry" "+")
((((triple1) -> (rule1 % int2))) -> (rule6 % int1))
Charlie is furry.
("Charlie" "is" "furry" "+")
int1
Charlie is round.
("Charlie" "is" "round" "+")
int2
Charlie is red.
("Charlie" "is" "red" "+")
((((((triple1) -> (rule1 % int3))) -> (rule6 % int2))) -> (rule4 % int1))
Charlie is red.
("Charlie" "is" "red" "+")
int1
Charlie is furry.
("Charlie" "is" "furry" "+")
int2
Charlie is round.
("Charlie" "is" "round" "+")
int3
Charlie is green.
("Charlie" "is" "green" "+")
((((triple1) -> (rule1 % int4)) ((((((triple1) -> (rule1 % int4))) -> (rule6 % int3))) -> (rule4 % int2))) -> (rule2 % int1))
Charlie is green.
("Charlie" "is" "green" "+")
int1
Charlie is red.
("Charlie" "is" "red" "+")
int2
Charlie is furry.
("Charlie" "is" "furry" "+")
int3
Charlie is round.
("Charlie" "is" "round" "+")
int4