Gamifying propositional logic: QED, an interactive textbook
11–20 of 22 posts
Re: Gamifying propositional logic: QED, an interactive textbook
#12See also "The Markable Mark": http://www.markability.net/ It's an introduction to logic using George Spencer-Brown's Laws of Form notation.
Re: Gamifying propositional logic: QED, an interactive textbook
#139.3(d) was a real pain until I thought about how I'd write a function with type `(Either a b, Either a c) -> Either a (b, c)`. Before that, I kept wanting a negation operator. (EDIT: Looks like some of the exercises are getting shuffled between versions -- 9.3(d) is the one I meant as of v1.2, but that might change over time. At least the type signature is a clue about which one I mean.)
I'm totally stuck. I would write an exhaustive pattern match to implement that function, but I have no clue how to do that in logic, without using negation.
To prove A|(B&C) assuming B, you have to use A|C and yet another (nested) case analysis.
Re: Gamifying propositional logic: QED, an interactive textbook
#14Re: Gamifying propositional logic: QED, an interactive textbook
#159.3(d) was a real pain until I thought about how I'd write a function with type `(Either a b, Either a c) -> Either a (b, c)`. Before that, I kept wanting a negation operator. (EDIT: Looks like some of the exercises are getting shuffled between versions -- 9.3(d) is the one I meant as of v1.2, but that might change over time. At least the type signature is a clue about which one I mean.)
I'm totally stuck. I would write an exhaustive pattern match to implement that function, but I have no clue how to do that in logic, without using negation.
f x y =
case x of
Left a -> Left a
Right b ->
case y of
Left a -> Left a
Right c -> Right (b, c)
Each `case` represents a couple of hypothetical contexts, applying case analysis to the Either (the OR). You're going to have to duplicate some work, since the `Left a` branch appears twice and you're getting the `a` from different places.Re: Gamifying propositional logic: QED, an interactive textbook
#16Re: Gamifying propositional logic: QED, an interactive textbook
#17What is the difference between "B [assuming A]" and "A implies B"? Is the distinction something that was introduced for the purposes of this game, or is it made otherwise as well?
Re: Gamifying propositional logic: QED, an interactive textbook
#18See also "The Markable Mark": http://www.markability.net/ It's an introduction to logic using George Spencer-Brown's Laws of Form notation.
I'm glad you mentioned LoF because I was thinking about it too, from an old article many years ago. I always get tangled up in the philosphy aspects, but what ever happened to it? Is it simply a different and consistent notation, or is there more to it?
I've found that you can use that question to partition people (who have an opinion on the question) into two major groups: Those who dismiss LoF as just another notation, and those who do find something deeper in it or at least claim to.
Pragmatically it's strictly superior to conventional notation: it's more parsimonious and it admits the rule (due to W. Bricken, I believe):
A(AB) = A(B)
Which is unknown in other notations, and permits proofs in LoF notation to be extraordinarily concise and elegant (compared to proofs worked in conventional notation.) It also permits a concise implementation of a SAT solver that has the nice property that you don't have to put your problem into normal form.Recently, George Burnett-Stuart (not Spencer-Brown), the author of the "Markable Mark" site, has worked out how to encode Predicate Calculus http://www.markability.net/prospectus.htm
Re: Gamifying propositional logic: QED, an interactive textbook
#19Earlier quoted context omitted.
I'm totally stuck. I would write an exhaustive pattern match to implement that function, but I have no clue how to do that in logic, without using negation.
You know A|B and A|C. Prove A|(B&C) by assuming A and separately by assuming B, then use case analysis (by dragging the first conclusion onto the second). To prove A|(B&C) assuming B, you have to use A|C and yet another (nested) case analysis.
Re: Gamifying propositional logic: QED, an interactive textbook
#20This is a very nice game/textbook! I'd love to see some additional features: - I'm currently at the excercise 9.1, and this far PUSH is always the only operation you can do when dragging from an outer scope to an inner one. Seems pretty fundamental. (To the extent that explicit mentions of "pushing" is not even normally mentioned in textual proofs?) Could this be streamlined somehow, for example applying PUSH automat…