Erin is not kind. Erin is quiet. Erin is smart. Fiona is kind. Fiona is nice. Fiona is not quiet. Fiona is round. Fiona is smart. Fiona is young. Gary is furry. Gary is kind. Gary is nice. Gary is quiet. Gary is round. Gary is smart. Gary is young. If Erin is kind and Erin is not furry then Erin is nice. If Erin is round and Erin is not furry then Erin is kind. If Erin is young then Erin is smart. All round things are nice. Furry, smart things are round. All smart things are round.
Erin is not kind.
("Erin" "is" "kind" "-")
Erin is quiet.
("Erin" "is" "quiet" "+")
Erin is smart.
("Erin" "is" "smart" "+")
Fiona is kind.
("Fiona" "is" "kind" "+")
Fiona is nice.
("Fiona" "is" "nice" "+")
Fiona is not quiet.
("Fiona" "is" "quiet" "-")
Fiona is round.
("Fiona" "is" "round" "+")
Fiona is smart.
("Fiona" "is" "smart" "+")
Fiona is young.
("Fiona" "is" "young" "+")
Gary is furry.
("Gary" "is" "furry" "+")
Gary is kind.
("Gary" "is" "kind" "+")
Gary is nice.
("Gary" "is" "nice" "+")
Gary is quiet.
("Gary" "is" "quiet" "+")
Gary is round.
("Gary" "is" "round" "+")
Gary is smart.
("Gary" "is" "smart" "+")
Gary is young.
("Gary" "is" "young" "+")
If Erin is kind and Erin is not furry then Erin is nice.
((("Erin" "is" "kind" "+") ("Erin" "is" "furry" "~")) -> ("Erin" "is" "nice" "+"))
If Erin is round and Erin is not furry then Erin is kind.
((("Erin" "is" "round" "+") ("Erin" "is" "furry" "~")) -> ("Erin" "is" "kind" "+"))
If Erin is young then Erin is smart.
((("Erin" "is" "young" "+")) -> ("Erin" "is" "smart" "+"))
All round things are nice.
((("something" "is" "round" "+")) -> ("something" "is" "nice" "+"))
Furry, smart things are round.
((("something" "is" "furry" "+") ("something" "is" "smart" "+")) -> ("something" "is" "round" "+"))
All smart things are round.
((("something" "is" "smart" "+")) -> ("something" "is" "round" "+"))
Erin is not kind.
True
1
proof
[(triple1)]
("Erin" "is" "kind" "-")
triple1
Fiona is quiet.
False
1
inv-proof
[(triple6)]
("Fiona" "is" "quiet" "+")
triple6
Fiona is not furry.
Unknown
inv-random
[@0: Fiona is furry.[CWA. Example of deepest failure = (FAIL)]]
("Fiona" "is" "furry" "-")
Erin is young.
Unknown
random
[@0: Erin is young.[CWA. Example of deepest failure = (FAIL)]]
("Erin" "is" "young" "+")
@0: Erin is not kind.[(triple1)] Erin is quiet.[(triple2)] Erin is smart.[(triple3)] Fiona is kind.[(triple4)] Fiona is nice.[(triple5 OR ((triple7) -> rule4) OR ((((triple8) -> rule6)) -> rule4))] Fiona is not quiet.[(triple6)] Fiona is round.[(triple7 OR ((triple8) -> rule6))] Fiona is smart.[(triple8)] Fiona is young.[(triple9)] Gary is furry.[(triple10)] Gary is kind.[(triple11)] Gary is nice.[(triple12 OR ((triple14) -> rule4) OR ((((triple15) -> rule6)) -> rule4) OR ((((triple10 triple15) -> rule5)) -> rule4))] Gary is quiet.[(triple13)] Gary is round.[(triple14 OR ((triple15) -> rule6) OR ((triple10 triple15) -> rule5))] Gary is smart.[(triple15)] Gary is young.[(triple16)] @1: Erin is round.[(((triple3) -> rule6))] @2: Erin is nice.[(((((triple3) -> rule6)) -> rule4))]
Erin is not kind.
("Erin" "is" "kind" "-")
triple1
Erin is quiet.
("Erin" "is" "quiet" "+")
triple2
Erin is smart.
("Erin" "is" "smart" "+")
triple3
Fiona is kind.
("Fiona" "is" "kind" "+")
triple4
Fiona is nice.
("Fiona" "is" "nice" "+")
triple5
((triple7) -> (rule4 % int1))
Fiona is nice.
("Fiona" "is" "nice" "+")
int1
((((triple8) -> (rule6 % int2))) -> (rule4 % int1))
Fiona is nice.
("Fiona" "is" "nice" "+")
int1
Fiona is round.
("Fiona" "is" "round" "+")
int2
Fiona is not quiet.
("Fiona" "is" "quiet" "-")
triple6
Fiona is round.
("Fiona" "is" "round" "+")
triple7
((triple8) -> (rule6 % int1))
Fiona is round.
("Fiona" "is" "round" "+")
int1
Fiona is smart.
("Fiona" "is" "smart" "+")
triple8
Fiona is young.
("Fiona" "is" "young" "+")
triple9
Gary is furry.
("Gary" "is" "furry" "+")
triple10
Gary is kind.
("Gary" "is" "kind" "+")
triple11
Gary is nice.
("Gary" "is" "nice" "+")
triple12
((triple14) -> (rule4 % int1))
Gary is nice.
("Gary" "is" "nice" "+")
int1
((((triple15) -> (rule6 % int2))) -> (rule4 % int1))
Gary is nice.
("Gary" "is" "nice" "+")
int1
Gary is round.
("Gary" "is" "round" "+")
int2
((((triple10 triple15) -> (rule5 % int2))) -> (rule4 % int1))
Gary is nice.
("Gary" "is" "nice" "+")
int1
Gary is round.
("Gary" "is" "round" "+")
int2
Gary is quiet.
("Gary" "is" "quiet" "+")
triple13
Gary is round.
("Gary" "is" "round" "+")
triple14
((triple15) -> (rule6 % int1))
Gary is round.
("Gary" "is" "round" "+")
int1
((triple10 triple15) -> (rule5 % int1))
Gary is round.
("Gary" "is" "round" "+")
int1
Gary is smart.
("Gary" "is" "smart" "+")
triple15
Gary is young.
("Gary" "is" "young" "+")
triple16
Erin is round.
("Erin" "is" "round" "+")
((triple3) -> (rule6 % int1))
Erin is round.
("Erin" "is" "round" "+")
int1
Erin is nice.
("Erin" "is" "nice" "+")
((((triple3) -> (rule6 % int2))) -> (rule4 % int1))
Erin is nice.
("Erin" "is" "nice" "+")
int1
Erin is round.
("Erin" "is" "round" "+")
int2