gauravmm / Navelgazer

Linter for first-order logic
http://navelgazer.gauravmanek.com/
MIT License
0 stars 1 forks source link

Incorrect decomposition of conditionals? #11

Open david-boles opened 4 years ago

david-boles commented 4 years ago

Unless I'm misunderstanding something, all of the "Decomposition of conditionals" rules are wrong... Shouldn't they be something like the following? (also added one and changed some letters for consistency)

{ from: ["not a or b"], to: "a -> b", name:"disjunction to conditional" },
{ from: ["(a and not b) or c"], to: "(a -> b) -> c", name:"disjunction to conditional" },
{ from: ["not a or not b or c"], to: "a -> (b -> c)", name:"disjunction to conditional" },
{ from: ["a -> b"], to: "not a or b", name:"conditional to disjunction" },
{ from: ["(a -> b) -> c"], to: "(a and not b) or c", name:"conditional to disjunction" },
{ from: ["a -> (b -> c)"], to: "not a or not b or c", name:"conditional to disjunction" },

Let me know if I'm right, I'll open a PR.

gauravmm commented 4 years ago

You're correct! Kudos for catching the bug.

Feel free to open a PR.