Fiona is round. Fiona is smart. Fiona is white. All smart things are round. All round things are rough. All smart things are not blue. If Fiona is cold then Fiona is kind. If Fiona is smart and Fiona is not round then Fiona is not rough. Rough things are cold.
Fiona is round.
("Fiona" "is" "round" "+")
Fiona is smart.
("Fiona" "is" "smart" "+")
Fiona is white.
("Fiona" "is" "white" "+")
All smart things are round.
((("something" "is" "smart" "+")) -> ("something" "is" "round" "+"))
All round things are rough.
((("something" "is" "round" "+")) -> ("something" "is" "rough" "+"))
All smart things are not blue.
((("something" "is" "smart" "+")) -> ("something" "is" "blue" "-"))
If Fiona is cold then Fiona is kind.
((("Fiona" "is" "cold" "+")) -> ("Fiona" "is" "kind" "+"))
If Fiona is smart and Fiona is not round then Fiona is not rough.
((("Fiona" "is" "smart" "+") ("Fiona" "is" "round" "~")) -> ("Fiona" "is" "rough" "-"))
Rough things are cold.
((("something" "is" "rough" "+")) -> ("something" "is" "cold" "+"))
Fiona is round.
True
1
proof
[(triple1 OR ((triple2) -> rule1))]
("Fiona" "is" "round" "+")
triple1
((triple2) -> (rule1 % int1))
Fiona is round.
("Fiona" "is" "round" "+")
int1
Fiona is not smart.
False
1
inv-proof
[(triple2)]
("Fiona" "is" "smart" "-")
triple2
Fiona is not blue.
True
2
proof
[(((triple2) -> rule3))]
("Fiona" "is" "blue" "-")
((triple2) -> (rule3 % int1))
Fiona is not blue.
("Fiona" "is" "blue" "-")
int1
Fiona is not rough.
False
2
inv-proof
[(((triple1) -> rule2) OR ((((triple2) -> rule1)) -> rule2))]
("Fiona" "is" "rough" "-")
((triple1) -> (rule2 % int1))
Fiona is rough.
("Fiona" "is" "rough" "+")
int1
((((triple2) -> (rule1 % int2))) -> (rule2 % int1))
Fiona is rough.
("Fiona" "is" "rough" "+")
int1
Fiona is round.
("Fiona" "is" "round" "+")
int2
Fiona is cold.
True
3
proof
[(((((triple1) -> rule2)) -> rule6) OR ((((((triple2) -> rule1)) -> rule2)) -> rule6))]
("Fiona" "is" "cold" "+")
((((triple1) -> (rule2 % int2))) -> (rule6 % int1))
Fiona is cold.
("Fiona" "is" "cold" "+")
int1
Fiona is rough.
("Fiona" "is" "rough" "+")
int2
((((((triple2) -> (rule1 % int3))) -> (rule2 % int2))) -> (rule6 % int1))
Fiona is cold.
("Fiona" "is" "cold" "+")
int1
Fiona is rough.
("Fiona" "is" "rough" "+")
int2
Fiona is round.
("Fiona" "is" "round" "+")
int3
Fiona is not cold.
False
3
inv-proof
[(((((triple1) -> rule2)) -> rule6) OR ((((((triple2) -> rule1)) -> rule2)) -> rule6))]
("Fiona" "is" "cold" "-")
((((triple1) -> (rule2 % int2))) -> (rule6 % int1))
Fiona is cold.
("Fiona" "is" "cold" "+")
int1
Fiona is rough.
("Fiona" "is" "rough" "+")
int2
((((((triple2) -> (rule1 % int3))) -> (rule2 % int2))) -> (rule6 % int1))
Fiona is cold.
("Fiona" "is" "cold" "+")
int1
Fiona is rough.
("Fiona" "is" "rough" "+")
int2
Fiona is round.
("Fiona" "is" "round" "+")
int3
Fiona is kind.
True
4
proof
[(((((((triple1) -> rule2)) -> rule6)) -> rule4) OR ((((((((triple2) -> rule1)) -> rule2)) -> rule6)) -> rule4))]
("Fiona" "is" "kind" "+")
((((((triple1) -> (rule2 % int3))) -> (rule6 % int2))) -> (rule4 % int1))
Fiona is kind.
("Fiona" "is" "kind" "+")
int1
Fiona is cold.
("Fiona" "is" "cold" "+")
int2
Fiona is rough.
("Fiona" "is" "rough" "+")
int3
((((((((triple2) -> (rule1 % int4))) -> (rule2 % int3))) -> (rule6 % int2))) -> (rule4 % int1))
Fiona is kind.
("Fiona" "is" "kind" "+")
int1
Fiona is cold.
("Fiona" "is" "cold" "+")
int2
Fiona is rough.
("Fiona" "is" "rough" "+")
int3
Fiona is round.
("Fiona" "is" "round" "+")
int4
Fiona is not kind.
False
4
inv-proof
[(((((((triple1) -> rule2)) -> rule6)) -> rule4) OR ((((((((triple2) -> rule1)) -> rule2)) -> rule6)) -> rule4))]
("Fiona" "is" "kind" "-")
((((((triple1) -> (rule2 % int3))) -> (rule6 % int2))) -> (rule4 % int1))
Fiona is kind.
("Fiona" "is" "kind" "+")
int1
Fiona is cold.
("Fiona" "is" "cold" "+")
int2
Fiona is rough.
("Fiona" "is" "rough" "+")
int3
((((((((triple2) -> (rule1 % int4))) -> (rule2 % int3))) -> (rule6 % int2))) -> (rule4 % int1))
Fiona is kind.
("Fiona" "is" "kind" "+")
int1
Fiona is cold.
("Fiona" "is" "cold" "+")
int2
Fiona is rough.
("Fiona" "is" "rough" "+")
int3
Fiona is round.
("Fiona" "is" "round" "+")
int4
@0: Fiona is round.[(triple1 OR ((triple2) -> rule1))] Fiona is smart.[(triple2)] Fiona is white.[(triple3)] @1: Fiona is not blue.[(((triple2) -> rule3))] Fiona is rough.[(((triple1) -> rule2) OR ((((triple2) -> rule1)) -> rule2))] @2: Fiona is cold.[(((((triple1) -> rule2)) -> rule6) OR ((((((triple2) -> rule1)) -> rule2)) -> rule6))] @3: Fiona is kind.[(((((((triple1) -> rule2)) -> rule6)) -> rule4) OR ((((((((triple2) -> rule1)) -> rule2)) -> rule6)) -> rule4))]
Fiona is round.
("Fiona" "is" "round" "+")
triple1
((triple2) -> (rule1 % int1))
Fiona is round.
("Fiona" "is" "round" "+")
int1
Fiona is smart.
("Fiona" "is" "smart" "+")
triple2
Fiona is white.
("Fiona" "is" "white" "+")
triple3
Fiona is not blue.
("Fiona" "is" "blue" "-")
((triple2) -> (rule3 % int1))
Fiona is not blue.
("Fiona" "is" "blue" "-")
int1
Fiona is rough.
("Fiona" "is" "rough" "+")
((triple1) -> (rule2 % int1))
Fiona is rough.
("Fiona" "is" "rough" "+")
int1
((((triple2) -> (rule1 % int2))) -> (rule2 % int1))
Fiona is rough.
("Fiona" "is" "rough" "+")
int1
Fiona is round.
("Fiona" "is" "round" "+")
int2
Fiona is cold.
("Fiona" "is" "cold" "+")
((((triple1) -> (rule2 % int2))) -> (rule6 % int1))
Fiona is cold.
("Fiona" "is" "cold" "+")
int1
Fiona is rough.
("Fiona" "is" "rough" "+")
int2
((((((triple2) -> (rule1 % int3))) -> (rule2 % int2))) -> (rule6 % int1))
Fiona is cold.
("Fiona" "is" "cold" "+")
int1
Fiona is rough.
("Fiona" "is" "rough" "+")
int2
Fiona is round.
("Fiona" "is" "round" "+")
int3
Fiona is kind.
("Fiona" "is" "kind" "+")
((((((triple1) -> (rule2 % int3))) -> (rule6 % int2))) -> (rule4 % int1))
Fiona is kind.
("Fiona" "is" "kind" "+")
int1
Fiona is cold.
("Fiona" "is" "cold" "+")
int2
Fiona is rough.
("Fiona" "is" "rough" "+")
int3
((((((((triple2) -> (rule1 % int4))) -> (rule2 % int3))) -> (rule6 % int2))) -> (rule4 % int1))
Fiona is kind.
("Fiona" "is" "kind" "+")
int1
Fiona is cold.
("Fiona" "is" "cold" "+")
int2
Fiona is rough.
("Fiona" "is" "rough" "+")
int3
Fiona is round.
("Fiona" "is" "round" "+")
int4