Dave is not red. Dave is smart. Erin is blue. Erin is not furry. Erin is not red. Erin is rough. Erin is smart. Erin is white. Fiona is furry. Fiona is nice. Fiona is not rough. Fiona is white. Furry, red things are blue. All rough, nice things are smart. If something is white and not furry then it is smart. If Fiona is rough then Fiona is not nice. If Erin is nice then Erin is not red. Smart things are not nice. Smart things are not nice. If Erin is not white and Erin is not nice then Erin is blue.
Dave is not red.
("Dave" "is" "red" "-")
Dave is smart.
("Dave" "is" "smart" "+")
Erin is blue.
("Erin" "is" "blue" "+")
Erin is not furry.
("Erin" "is" "furry" "-")
Erin is not red.
("Erin" "is" "red" "-")
Erin is rough.
("Erin" "is" "rough" "+")
Erin is smart.
("Erin" "is" "smart" "+")
Erin is white.
("Erin" "is" "white" "+")
Fiona is furry.
("Fiona" "is" "furry" "+")
Fiona is nice.
("Fiona" "is" "nice" "+")
Fiona is not rough.
("Fiona" "is" "rough" "-")
Fiona is white.
("Fiona" "is" "white" "+")
Furry, red things are blue.
((("something" "is" "furry" "+") ("something" "is" "red" "+")) -> ("something" "is" "blue" "+"))
All rough, nice things are smart.
((("something" "is" "rough" "+") ("something" "is" "nice" "+")) -> ("something" "is" "smart" "+"))
If something is white and not furry then it is smart.
((("something" "is" "white" "+") ("something" "is" "furry" "~")) -> ("something" "is" "smart" "+"))
If Fiona is rough then Fiona is not nice.
((("Fiona" "is" "rough" "+")) -> ("Fiona" "is" "nice" "-"))
If Erin is nice then Erin is not red.
((("Erin" "is" "nice" "+")) -> ("Erin" "is" "red" "-"))
Smart things are not nice.
((("something" "is" "smart" "+")) -> ("something" "is" "nice" "-"))
Smart things are not nice.
((("something" "is" "smart" "+")) -> ("something" "is" "nice" "-"))
If Erin is not white and Erin is not nice then Erin is blue.
((("Erin" "is" "white" "~") ("Erin" "is" "nice" "~")) -> ("Erin" "is" "blue" "+"))
Dave is smart.
True
1
proof
[(triple2)]
("Dave" "is" "smart" "+")
triple2
Erin is not smart.
False
1
inv-proof
[(triple7 OR ((triple8 triple4) -> rule3))]
("Erin" "is" "smart" "-")
triple7
((triple8 triple4) -> (rule3 % int1))
Erin is smart.
("Erin" "is" "smart" "+")
int1
Dave is not nice.
True
2
proof
[(((triple2) -> rule6) OR ((triple2) -> rule7))]
("Dave" "is" "nice" "-")
((triple2) -> (rule6 % int1))
Dave is not nice.
("Dave" "is" "nice" "-")
int1
((triple2) -> (rule7 % int1))
Dave is not nice.
("Dave" "is" "nice" "-")
int1
Erin is nice.
False
2
inv-proof
[(((triple7) -> rule6) OR ((triple7) -> rule7) OR ((((triple8 triple4) -> rule3)) -> rule6) OR ((((triple8 triple4) -> rule3)) -> rule7))]
("Erin" "is" "nice" "+")
((triple7) -> (rule6 % int1))
Erin is not nice.
("Erin" "is" "nice" "-")
int1
((triple7) -> (rule7 % int1))
Erin is not nice.
("Erin" "is" "nice" "-")
int1
((((triple8 triple4) -> (rule3 % int2))) -> (rule6 % int1))
Erin is not nice.
("Erin" "is" "nice" "-")
int1
Erin is smart.
("Erin" "is" "smart" "+")
int2
((((triple8 triple4) -> (rule3 % int2))) -> (rule7 % int1))
Erin is not nice.
("Erin" "is" "nice" "-")
int1
Erin is smart.
("Erin" "is" "smart" "+")
int2
Fiona is not smart.
Unknown
inv-rconc
[@1: Fiona is smart.[CWA. Example of deepest failure = (rule2 <- FAIL)]]
("Fiona" "is" "smart" "-")
Dave is blue.
Unknown
rconc
[@1: Dave is blue.[CWA. Example of deepest failure = (rule1 <- FAIL)]]
("Dave" "is" "blue" "+")
Dave is not white.
Unknown
inv-random
[@0: Dave is white.[CWA. Example of deepest failure = (FAIL)]]
("Dave" "is" "white" "-")
Dave is furry.
Unknown
random
[@0: Dave is furry.[CWA. Example of deepest failure = (FAIL)]]
("Dave" "is" "furry" "+")
@0: Dave is not red.[(triple1)] Dave is smart.[(triple2)] Erin is blue.[(triple3)] Erin is not furry.[(triple4)] Erin is not red.[(triple5)] Erin is rough.[(triple6)] Erin is smart.[(triple7 OR ((triple8 triple4) -> rule3))] Erin is white.[(triple8)] Fiona is furry.[(triple9)] Fiona is nice.[(triple10)] Fiona is not rough.[(triple11)] Fiona is white.[(triple12)] @1: Dave is not nice.[(((triple2) -> rule6) OR ((triple2) -> rule7))] Erin is not nice.[(((triple7) -> rule6) OR ((triple7) -> rule7) OR ((((triple8 triple4) -> rule3)) -> rule6) OR ((((triple8 triple4) -> rule3)) -> rule7))]
Dave is not red.
("Dave" "is" "red" "-")
triple1
Dave is smart.
("Dave" "is" "smart" "+")
triple2
Erin is blue.
("Erin" "is" "blue" "+")
triple3
Erin is not furry.
("Erin" "is" "furry" "-")
triple4
Erin is not red.
("Erin" "is" "red" "-")
triple5
Erin is rough.
("Erin" "is" "rough" "+")
triple6
Erin is smart.
("Erin" "is" "smart" "+")
triple7
((triple8 triple4) -> (rule3 % int1))
Erin is smart.
("Erin" "is" "smart" "+")
int1
Erin is white.
("Erin" "is" "white" "+")
triple8
Fiona is furry.
("Fiona" "is" "furry" "+")
triple9
Fiona is nice.
("Fiona" "is" "nice" "+")
triple10
Fiona is not rough.
("Fiona" "is" "rough" "-")
triple11
Fiona is white.
("Fiona" "is" "white" "+")
triple12
Dave is not nice.
("Dave" "is" "nice" "-")
((triple2) -> (rule6 % int1))
Dave is not nice.
("Dave" "is" "nice" "-")
int1
((triple2) -> (rule7 % int1))
Dave is not nice.
("Dave" "is" "nice" "-")
int1
Erin is not nice.
("Erin" "is" "nice" "-")
((triple7) -> (rule6 % int1))
Erin is not nice.
("Erin" "is" "nice" "-")
int1
((triple7) -> (rule7 % int1))
Erin is not nice.
("Erin" "is" "nice" "-")
int1
((((triple8 triple4) -> (rule3 % int2))) -> (rule6 % int1))
Erin is not nice.
("Erin" "is" "nice" "-")
int1
Erin is smart.
("Erin" "is" "smart" "+")
int2
((((triple8 triple4) -> (rule3 % int2))) -> (rule7 % int1))
Erin is not nice.
("Erin" "is" "nice" "-")
int1
Erin is smart.
("Erin" "is" "smart" "+")
int2