Dave is red. Erin is not white. Fiona is rough. Blue, round things are not red. All rough, furry things are red. Rough things are round. Blue, furry things are white. If Fiona is round then Fiona is furry. All smart things are furry. Round things are rough. If Fiona is smart then Fiona is blue.
Dave is red.
("Dave" "is" "red" "+")
Erin is not white.
("Erin" "is" "white" "-")
Fiona is rough.
("Fiona" "is" "rough" "+")
Blue, round things are not red.
((("something" "is" "blue" "+") ("something" "is" "round" "+")) -> ("something" "is" "red" "-"))
All rough, furry things are red.
((("something" "is" "rough" "+") ("something" "is" "furry" "+")) -> ("something" "is" "red" "+"))
Rough things are round.
((("something" "is" "rough" "+")) -> ("something" "is" "round" "+"))
Blue, furry things are white.
((("something" "is" "blue" "+") ("something" "is" "furry" "+")) -> ("something" "is" "white" "+"))
If Fiona is round then Fiona is furry.
((("Fiona" "is" "round" "+")) -> ("Fiona" "is" "furry" "+"))
All smart things are furry.
((("something" "is" "smart" "+")) -> ("something" "is" "furry" "+"))
Round things are rough.
((("something" "is" "round" "+")) -> ("something" "is" "rough" "+"))
If Fiona is smart then Fiona is blue.
((("Fiona" "is" "smart" "+")) -> ("Fiona" "is" "blue" "+"))
Erin is not white.
True
1
proof
[(triple2)]
("Erin" "is" "white" "-")
triple2
Fiona is not rough.
False
1
inv-proof
[(triple3)]
("Fiona" "is" "rough" "-")
triple3
Fiona is round.
True
2
proof
[(((triple3) -> rule3))]
("Fiona" "is" "round" "+")
((triple3) -> (rule3 % int1))
Fiona is round.
("Fiona" "is" "round" "+")
int1
Fiona is not round.
False
2
inv-proof
[(((triple3) -> rule3))]
("Fiona" "is" "round" "-")
((triple3) -> (rule3 % int1))
Fiona is round.
("Fiona" "is" "round" "+")
int1
Fiona is furry.
True
3
proof
[(((((triple3) -> rule3)) -> rule5))]
("Fiona" "is" "furry" "+")
((((triple3) -> (rule3 % int2))) -> (rule5 % int1))
Fiona is furry.
("Fiona" "is" "furry" "+")
int1
Fiona is round.
("Fiona" "is" "round" "+")
int2
Fiona is not furry.
False
3
inv-proof
[(((((triple3) -> rule3)) -> rule5))]
("Fiona" "is" "furry" "-")
((((triple3) -> (rule3 % int2))) -> (rule5 % int1))
Fiona is furry.
("Fiona" "is" "furry" "+")
int1
Fiona is round.
("Fiona" "is" "round" "+")
int2
Fiona is red.
True
5
proof
[(((triple3 ((((triple3) -> rule3)) -> rule5)) -> rule2))]
("Fiona" "is" "red" "+")
((triple3 ((((triple3) -> (rule3 % int3))) -> (rule5 % int2))) -> (rule2 % int1))
Fiona is red.
("Fiona" "is" "red" "+")
int1
Fiona is furry.
("Fiona" "is" "furry" "+")
int2
Fiona is round.
("Fiona" "is" "round" "+")
int3
Fiona is not red.
False
5
inv-proof
[(((triple3 ((((triple3) -> rule3)) -> rule5)) -> rule2))]
("Fiona" "is" "red" "-")
((triple3 ((((triple3) -> (rule3 % int3))) -> (rule5 % int2))) -> (rule2 % int1))
Fiona is red.
("Fiona" "is" "red" "+")
int1
Fiona is furry.
("Fiona" "is" "furry" "+")
int2
Fiona is round.
("Fiona" "is" "round" "+")
int3
Dave is not round.
Unknown
inv-rconc
[@2: Dave is round.[CWA. Example of deepest failure = (rule3 <- rule7 <- FAIL)]]
("Dave" "is" "round" "-")
Dave is white.
Unknown
rconc
[@1: Dave is white.[CWA. Example of deepest failure = (rule4 <- FAIL)]]
("Dave" "is" "white" "+")
Fiona is not blue.
Unknown
inv-rconc
[@1: Fiona is blue.[CWA. Example of deepest failure = (rule8 <- FAIL)]]
("Fiona" "is" "blue" "-")
Erin is round.
Unknown
rconc
[@2: Erin is round.[CWA. Example of deepest failure = (rule3 <- rule7 <- FAIL)]]
("Erin" "is" "round" "+")
Dave is not blue.
Unknown
inv-random
[@0: Dave is blue.[CWA. Example of deepest failure = (FAIL)]]
("Dave" "is" "blue" "-")
Erin is blue.
Unknown
random
[@0: Erin is blue.[CWA. Example of deepest failure = (FAIL)]]
("Erin" "is" "blue" "+")
Dave is not smart.
Unknown
inv-random
[@0: Dave is smart.[CWA. Example of deepest failure = (FAIL)]]
("Dave" "is" "smart" "-")
Erin is smart.
Unknown
random
[@0: Erin is smart.[CWA. Example of deepest failure = (FAIL)]]
("Erin" "is" "smart" "+")
@0: Dave is red.[(triple1)] Erin is not white.[(triple2)] Fiona is rough.[(triple3)] @1: Fiona is round.[(((triple3) -> rule3))] @2: Fiona is furry.[(((((triple3) -> rule3)) -> rule5))] @3: Fiona is red.[(((triple3 ((((triple3) -> rule3)) -> rule5)) -> rule2))]
Dave is red.
("Dave" "is" "red" "+")
triple1
Erin is not white.
("Erin" "is" "white" "-")
triple2
Fiona is rough.
("Fiona" "is" "rough" "+")
triple3
Fiona is round.
("Fiona" "is" "round" "+")
((triple3) -> (rule3 % int1))
Fiona is round.
("Fiona" "is" "round" "+")
int1
Fiona is furry.
("Fiona" "is" "furry" "+")
((((triple3) -> (rule3 % int2))) -> (rule5 % int1))
Fiona is furry.
("Fiona" "is" "furry" "+")
int1
Fiona is round.
("Fiona" "is" "round" "+")
int2
Fiona is red.
("Fiona" "is" "red" "+")
((triple3 ((((triple3) -> (rule3 % int3))) -> (rule5 % int2))) -> (rule2 % int1))
Fiona is red.
("Fiona" "is" "red" "+")
int1
Fiona is furry.
("Fiona" "is" "furry" "+")
int2
Fiona is round.
("Fiona" "is" "round" "+")
int3