Charlie is white. Fiona is round. Gary is not smart. Harry is quiet. Kind people are round. All white people are kind. If someone is round then they are quiet.
Charlie is white.
("Charlie" "is" "white" "+")
Fiona is round.
("Fiona" "is" "round" "+")
Gary is not smart.
("Gary" "is" "smart" "-")
Harry is quiet.
("Harry" "is" "quiet" "+")
Kind people are round.
((("someone" "is" "kind" "+")) -> ("someone" "is" "round" "+"))
All white people are kind.
((("someone" "is" "white" "+")) -> ("someone" "is" "kind" "+"))
If someone is round then they are quiet.
((("someone" "is" "round" "+")) -> ("someone" "is" "quiet" "+"))
Fiona is round.
True
1
proof
[(triple2)]
("Fiona" "is" "round" "+")
triple2
Harry is not quiet.
False
1
inv-proof
[(triple4)]
("Harry" "is" "quiet" "-")
triple4
Charlie is kind.
True
2
proof
[(((triple1) -> rule2))]
("Charlie" "is" "kind" "+")
((triple1) -> (rule2 % int1))
Charlie is kind.
("Charlie" "is" "kind" "+")
int1
Charlie is not kind.
False
2
inv-proof
[(((triple1) -> rule2))]
("Charlie" "is" "kind" "-")
((triple1) -> (rule2 % int1))
Charlie is kind.
("Charlie" "is" "kind" "+")
int1
Charlie is round.
True
3
proof
[(((((triple1) -> rule2)) -> rule1))]
("Charlie" "is" "round" "+")
((((triple1) -> (rule2 % int2))) -> (rule1 % int1))
Charlie is round.
("Charlie" "is" "round" "+")
int1
Charlie is kind.
("Charlie" "is" "kind" "+")
int2
Charlie is not round.
False
3
inv-proof
[(((((triple1) -> rule2)) -> rule1))]
("Charlie" "is" "round" "-")
((((triple1) -> (rule2 % int2))) -> (rule1 % int1))
Charlie is round.
("Charlie" "is" "round" "+")
int1
Charlie is kind.
("Charlie" "is" "kind" "+")
int2
Charlie is quiet.
True
4
proof
[(((((((triple1) -> rule2)) -> rule1)) -> rule3))]
("Charlie" "is" "quiet" "+")
((((((triple1) -> (rule2 % int3))) -> (rule1 % int2))) -> (rule3 % int1))
Charlie is quiet.
("Charlie" "is" "quiet" "+")
int1
Charlie is round.
("Charlie" "is" "round" "+")
int2
Charlie is kind.
("Charlie" "is" "kind" "+")
int3
Charlie is not quiet.
False
4
inv-proof
[(((((((triple1) -> rule2)) -> rule1)) -> rule3))]
("Charlie" "is" "quiet" "-")
((((((triple1) -> (rule2 % int3))) -> (rule1 % int2))) -> (rule3 % int1))
Charlie is quiet.
("Charlie" "is" "quiet" "+")
int1
Charlie is round.
("Charlie" "is" "round" "+")
int2
Charlie is kind.
("Charlie" "is" "kind" "+")
int3
Harry is not kind.
Unknown
inv-rconc
[@1: Harry is kind.[CWA. Example of deepest failure = (rule2 <- FAIL)]]
("Harry" "is" "kind" "-")
Gary is quiet.
Unknown
rconc
[@3: Gary is quiet.[CWA. Example of deepest failure = (rule3 <- rule1 <- rule2 <- FAIL)]]
("Gary" "is" "quiet" "+")
Gary is not kind.
Unknown
inv-rconc
[@1: Gary is kind.[CWA. Example of deepest failure = (rule2 <- FAIL)]]
("Gary" "is" "kind" "-")
Fiona is kind.
Unknown
rconc
[@1: Fiona is kind.[CWA. Example of deepest failure = (rule2 <- FAIL)]]
("Fiona" "is" "kind" "+")
Charlie is not blue.
Unknown
inv-random
[@0: Charlie is blue.[CWA. Example of deepest failure = (FAIL)]]
("Charlie" "is" "blue" "-")
Fiona is smart.
Unknown
random
[@0: Fiona is smart.[CWA. Example of deepest failure = (FAIL)]]
("Fiona" "is" "smart" "+")
Harry is not white.
Unknown
inv-random
[@0: Harry is white.[CWA. Example of deepest failure = (FAIL)]]
("Harry" "is" "white" "-")
Gary is furry.
Unknown
random
[@0: Gary is furry.[CWA. Example of deepest failure = (FAIL)]]
("Gary" "is" "furry" "+")
@0: Charlie is white.[(triple1)] Fiona is round.[(triple2)] Gary is not smart.[(triple3)] Harry is quiet.[(triple4)] @1: Charlie is kind.[(((triple1) -> rule2))] Fiona is quiet.[(((triple2) -> rule3))] @2: Charlie is round.[(((((triple1) -> rule2)) -> rule1))] @3: Charlie is quiet.[(((((((triple1) -> rule2)) -> rule1)) -> rule3))]
Charlie is white.
("Charlie" "is" "white" "+")
triple1
Fiona is round.
("Fiona" "is" "round" "+")
triple2
Gary is not smart.
("Gary" "is" "smart" "-")
triple3
Harry is quiet.
("Harry" "is" "quiet" "+")
triple4
Charlie is kind.
("Charlie" "is" "kind" "+")
((triple1) -> (rule2 % int1))
Charlie is kind.
("Charlie" "is" "kind" "+")
int1
Fiona is quiet.
("Fiona" "is" "quiet" "+")
((triple2) -> (rule3 % int1))
Fiona is quiet.
("Fiona" "is" "quiet" "+")
int1
Charlie is round.
("Charlie" "is" "round" "+")
((((triple1) -> (rule2 % int2))) -> (rule1 % int1))
Charlie is round.
("Charlie" "is" "round" "+")
int1
Charlie is kind.
("Charlie" "is" "kind" "+")
int2
Charlie is quiet.
("Charlie" "is" "quiet" "+")
((((((triple1) -> (rule2 % int3))) -> (rule1 % int2))) -> (rule3 % int1))
Charlie is quiet.
("Charlie" "is" "quiet" "+")
int1
Charlie is round.
("Charlie" "is" "round" "+")
int2
Charlie is kind.
("Charlie" "is" "kind" "+")
int3