Dave is furry. Dave is smart. Erin is blue. Erin is smart. Fiona is blue. Fiona is green. Fiona is red. Gary is green. Gary is nice. Gary is red. If Gary is smart and Gary is furry then Gary is nice. If someone is green and blue then they are smart. Red people are kind. Green people are red. Red, smart people are nice. If someone is furry and green then they are nice. Smart people are blue. If Gary is blue then Gary is green.
Dave is furry.
("Dave" "is" "furry" "+")
Dave is smart.
("Dave" "is" "smart" "+")
Erin is blue.
("Erin" "is" "blue" "+")
Erin is smart.
("Erin" "is" "smart" "+")
Fiona is blue.
("Fiona" "is" "blue" "+")
Fiona is green.
("Fiona" "is" "green" "+")
Fiona is red.
("Fiona" "is" "red" "+")
Gary is green.
("Gary" "is" "green" "+")
Gary is nice.
("Gary" "is" "nice" "+")
Gary is red.
("Gary" "is" "red" "+")
If Gary is smart and Gary is furry then Gary is nice.
((("Gary" "is" "smart" "+") ("Gary" "is" "furry" "+")) -> ("Gary" "is" "nice" "+"))
If someone is green and blue then they are smart.
((("someone" "is" "green" "+") ("someone" "is" "blue" "+")) -> ("someone" "is" "smart" "+"))
Red people are kind.
((("someone" "is" "red" "+")) -> ("someone" "is" "kind" "+"))
Green people are red.
((("someone" "is" "green" "+")) -> ("someone" "is" "red" "+"))
Red, smart people are nice.
((("someone" "is" "red" "+") ("someone" "is" "smart" "+")) -> ("someone" "is" "nice" "+"))
If someone is furry and green then they are nice.
((("someone" "is" "furry" "+") ("someone" "is" "green" "+")) -> ("someone" "is" "nice" "+"))
Smart people are blue.
((("someone" "is" "smart" "+")) -> ("someone" "is" "blue" "+"))
If Gary is blue then Gary is green.
((("Gary" "is" "blue" "+")) -> ("Gary" "is" "green" "+"))
Fiona is green.
True
1
proof
[(triple6)]
("Fiona" "is" "green" "+")
triple6
Fiona is not red.
False
1
inv-proof
[(triple7 OR ((triple6) -> rule4))]
("Fiona" "is" "red" "-")
triple7
((triple6) -> (rule4 % int1))
Fiona is red.
("Fiona" "is" "red" "+")
int1
Erin is not red.
Unknown
inv-rconc
[@1: Erin is red.[CWA. Example of deepest failure = (rule4 <- FAIL)]]
("Erin" "is" "red" "-")
Erin is green.
Unknown
random
[@0: Erin is green.[CWA. Example of deepest failure = (FAIL)]]
("Erin" "is" "green" "+")
@0: Dave is furry.[(triple1)] Dave is smart.[(triple2)] Erin is blue.[(triple3 OR ((triple4) -> rule7))] Erin is smart.[(triple4)] Fiona is blue.[(triple5)] Fiona is green.[(triple6)] Fiona is red.[(triple7 OR ((triple6) -> rule4))] Gary is green.[(triple8)] Gary is nice.[(triple9)] Gary is red.[(triple10 OR ((triple8) -> rule4))] @1: Dave is blue.[(((triple2) -> rule7))] Fiona is kind.[(((triple7) -> rule3) OR ((((triple6) -> rule4)) -> rule3))] Fiona is smart.[(((triple6 triple5) -> rule2))] Gary is kind.[(((triple10) -> rule3) OR ((((triple8) -> rule4)) -> rule3))] @2: Fiona is nice.[(((triple7 ((triple6 triple5) -> rule2)) -> rule5) OR ((((triple6) -> rule4) ((triple6 triple5) -> rule2)) -> rule5))]
Dave is furry.
("Dave" "is" "furry" "+")
triple1
Dave is smart.
("Dave" "is" "smart" "+")
triple2
Erin is blue.
("Erin" "is" "blue" "+")
triple3
((triple4) -> (rule7 % int1))
Erin is blue.
("Erin" "is" "blue" "+")
int1
Erin is smart.
("Erin" "is" "smart" "+")
triple4
Fiona is blue.
("Fiona" "is" "blue" "+")
triple5
Fiona is green.
("Fiona" "is" "green" "+")
triple6
Fiona is red.
("Fiona" "is" "red" "+")
triple7
((triple6) -> (rule4 % int1))
Fiona is red.
("Fiona" "is" "red" "+")
int1
Gary is green.
("Gary" "is" "green" "+")
triple8
Gary is nice.
("Gary" "is" "nice" "+")
triple9
Gary is red.
("Gary" "is" "red" "+")
triple10
((triple8) -> (rule4 % int1))
Gary is red.
("Gary" "is" "red" "+")
int1
Dave is blue.
("Dave" "is" "blue" "+")
((triple2) -> (rule7 % int1))
Dave is blue.
("Dave" "is" "blue" "+")
int1
Fiona is kind.
("Fiona" "is" "kind" "+")
((triple7) -> (rule3 % int1))
Fiona is kind.
("Fiona" "is" "kind" "+")
int1
((((triple6) -> (rule4 % int2))) -> (rule3 % int1))
Fiona is kind.
("Fiona" "is" "kind" "+")
int1
Fiona is red.
("Fiona" "is" "red" "+")
int2
Fiona is smart.
("Fiona" "is" "smart" "+")
((triple6 triple5) -> (rule2 % int1))
Fiona is smart.
("Fiona" "is" "smart" "+")
int1
Gary is kind.
("Gary" "is" "kind" "+")
((triple10) -> (rule3 % int1))
Gary is kind.
("Gary" "is" "kind" "+")
int1
((((triple8) -> (rule4 % int2))) -> (rule3 % int1))
Gary is kind.
("Gary" "is" "kind" "+")
int1
Gary is red.
("Gary" "is" "red" "+")
int2
Fiona is nice.
("Fiona" "is" "nice" "+")
((triple7 ((triple6 triple5) -> (rule2 % int2))) -> (rule5 % int1))
Fiona is nice.
("Fiona" "is" "nice" "+")
int1
Fiona is smart.
("Fiona" "is" "smart" "+")
int2
((((triple6) -> (rule4 % int3)) ((triple6 triple5) -> (rule2 % int2))) -> (rule5 % int1))
Fiona is nice.
("Fiona" "is" "nice" "+")
int1
Fiona is smart.
("Fiona" "is" "smart" "+")
int2
Fiona is red.
("Fiona" "is" "red" "+")
int3