Charlie is smart. Erin is blue. Fiona is white. Gary is blue. Gary is kind. Gary is round. Gary is not young. If someone is kind then they are round. If someone is smart and not big then they are round. If someone is round and young then they are blue. If someone is white then they are smart. All smart people are kind. If Gary is young and Gary is big then Gary is white.
Charlie is smart.
("Charlie" "is" "smart" "+")
Erin is blue.
("Erin" "is" "blue" "+")
Fiona is white.
("Fiona" "is" "white" "+")
Gary is blue.
("Gary" "is" "blue" "+")
Gary is kind.
("Gary" "is" "kind" "+")
Gary is round.
("Gary" "is" "round" "+")
Gary is not young.
("Gary" "is" "young" "-")
If someone is kind then they are round.
((("someone" "is" "kind" "+")) -> ("someone" "is" "round" "+"))
If someone is smart and not big then they are round.
((("someone" "is" "smart" "+") ("someone" "is" "big" "~")) -> ("someone" "is" "round" "+"))
If someone is round and young then they are blue.
((("someone" "is" "round" "+") ("someone" "is" "young" "+")) -> ("someone" "is" "blue" "+"))
If someone is white then they are smart.
((("someone" "is" "white" "+")) -> ("someone" "is" "smart" "+"))
All smart people are kind.
((("someone" "is" "smart" "+")) -> ("someone" "is" "kind" "+"))
If Gary is young and Gary is big then Gary is white.
((("Gary" "is" "young" "+") ("Gary" "is" "big" "+")) -> ("Gary" "is" "white" "+"))
Gary is blue.
True
1
proof
[(triple4)]
("Gary" "is" "blue" "+")
triple4
Erin is not blue.
False
1
inv-proof
[(triple2)]
("Erin" "is" "blue" "-")
triple2
Charlie is kind.
True
2
proof
[(((triple1) -> rule5))]
("Charlie" "is" "kind" "+")
((triple1) -> (rule5 % int1))
Charlie is kind.
("Charlie" "is" "kind" "+")
int1
Charlie is not kind.
False
2
inv-proof
[(((triple1) -> rule5))]
("Charlie" "is" "kind" "-")
((triple1) -> (rule5 % int1))
Charlie is kind.
("Charlie" "is" "kind" "+")
int1
Charlie is round.
True
3
proof
[(((((triple1) -> rule5)) -> rule1))]
("Charlie" "is" "round" "+")
((((triple1) -> (rule5 % 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) -> rule5)) -> rule1))]
("Charlie" "is" "round" "-")
((((triple1) -> (rule5 % int2))) -> (rule1 % int1))
Charlie is round.
("Charlie" "is" "round" "+")
int1
Charlie is kind.
("Charlie" "is" "kind" "+")
int2
Fiona is round.
True
4
proof
[(((((((triple3) -> rule4)) -> rule5)) -> rule1))]
("Fiona" "is" "round" "+")
((((((triple3) -> (rule4 % int3))) -> (rule5 % int2))) -> (rule1 % int1))
Fiona is round.
("Fiona" "is" "round" "+")
int1
Fiona is kind.
("Fiona" "is" "kind" "+")
int2
Fiona is smart.
("Fiona" "is" "smart" "+")
int3
Fiona is not round.
False
4
inv-proof
[(((((((triple3) -> rule4)) -> rule5)) -> rule1))]
("Fiona" "is" "round" "-")
((((((triple3) -> (rule4 % int3))) -> (rule5 % int2))) -> (rule1 % int1))
Fiona is round.
("Fiona" "is" "round" "+")
int1
Fiona is kind.
("Fiona" "is" "kind" "+")
int2
Fiona is smart.
("Fiona" "is" "smart" "+")
int3
Erin is not round.
Unknown
inv-rconc
[@3: Erin is round.[CWA. Example of deepest failure = (rule1 <- rule5 <- rule4 <- FAIL)]]
("Erin" "is" "round" "-")
Charlie is blue.
Unknown
rconc
[@1: Charlie is blue.[CWA. Example of deepest failure = (rule3 <- FAIL)]]
("Charlie" "is" "blue" "+")
Fiona is not blue.
Unknown
inv-rconc
[@1: Fiona is blue.[CWA. Example of deepest failure = (rule3 <- FAIL)]]
("Fiona" "is" "blue" "-")
Erin is kind.
Unknown
rconc
[@2: Erin is kind.[CWA. Example of deepest failure = (rule5 <- rule4 <- FAIL)]]
("Erin" "is" "kind" "+")
Fiona is not young.
Unknown
inv-random
[@0: Fiona is young.[CWA. Example of deepest failure = (FAIL)]]
("Fiona" "is" "young" "-")
Charlie is white.
Unknown
random
[@0: Charlie is white.[CWA. Example of deepest failure = (FAIL)]]
("Charlie" "is" "white" "+")
Erin is not white.
Unknown
inv-random
[@0: Erin is white.[CWA. Example of deepest failure = (FAIL)]]
("Erin" "is" "white" "-")
Charlie is young.
Unknown
random
[@0: Charlie is young.[CWA. Example of deepest failure = (FAIL)]]
("Charlie" "is" "young" "+")
@0: Charlie is smart.[(triple1)] Erin is blue.[(triple2)] Fiona is white.[(triple3)] Gary is blue.[(triple4)] Gary is kind.[(triple5)] Gary is not young.[(triple7)] Gary is round.[(triple6 OR ((triple5) -> rule1))] @1: Charlie is kind.[(((triple1) -> rule5))] Fiona is smart.[(((triple3) -> rule4))] @2: Charlie is round.[(((((triple1) -> rule5)) -> rule1))] Fiona is kind.[(((((triple3) -> rule4)) -> rule5))] @3: Fiona is round.[(((((((triple3) -> rule4)) -> rule5)) -> rule1))]
Charlie is smart.
("Charlie" "is" "smart" "+")
triple1
Erin is blue.
("Erin" "is" "blue" "+")
triple2
Fiona is white.
("Fiona" "is" "white" "+")
triple3
Gary is blue.
("Gary" "is" "blue" "+")
triple4
Gary is kind.
("Gary" "is" "kind" "+")
triple5
Gary is not young.
("Gary" "is" "young" "-")
triple7
Gary is round.
("Gary" "is" "round" "+")
triple6
((triple5) -> (rule1 % int1))
Gary is round.
("Gary" "is" "round" "+")
int1
Charlie is kind.
("Charlie" "is" "kind" "+")
((triple1) -> (rule5 % int1))
Charlie is kind.
("Charlie" "is" "kind" "+")
int1
Fiona is smart.
("Fiona" "is" "smart" "+")
((triple3) -> (rule4 % int1))
Fiona is smart.
("Fiona" "is" "smart" "+")
int1
Charlie is round.
("Charlie" "is" "round" "+")
((((triple1) -> (rule5 % int2))) -> (rule1 % int1))
Charlie is round.
("Charlie" "is" "round" "+")
int1
Charlie is kind.
("Charlie" "is" "kind" "+")
int2
Fiona is kind.
("Fiona" "is" "kind" "+")
((((triple3) -> (rule4 % int2))) -> (rule5 % int1))
Fiona is kind.
("Fiona" "is" "kind" "+")
int1
Fiona is smart.
("Fiona" "is" "smart" "+")
int2
Fiona is round.
("Fiona" "is" "round" "+")
((((((triple3) -> (rule4 % int3))) -> (rule5 % int2))) -> (rule1 % int1))
Fiona is round.
("Fiona" "is" "round" "+")
int1
Fiona is kind.
("Fiona" "is" "kind" "+")
int2
Fiona is smart.
("Fiona" "is" "smart" "+")
int3