Propositional Logic in LaTeX
Those of you who go to school with me may remember a week at the end of last semester where I agonized over building an environment in LaTeX to do propositional logic proofs. After I was finished with it, I showed it to Prof Aaron at Pomona (who was teaching the Computability and Logic class at the time). He was so impressed with it that he used it to make the answer key for the homeworks on propositional logic. He also showed the other CS profs. This semester, Prof. Keller is teaching CS81, and apparently, he was so impressed with it that not only is he using it now, but he has told his CS81 class about it. Inadvertently, he actually told everyone in every class he teaches (including Music84) about my work, since he sent one email out detailing office hours and my LaTeX environment.
Everyone seems to like this so much because, as far as anyone can tell, this is the first time ever that anyone has done this. Ever. So, I’m pretty excited that people like it so much. Feel free to copy and use it, though I’d like you to keep the documentation (included in comments in the file) intact. Also, if you make improvements to it, I’d like to see a copy sometime.
You can get a copy here: http://www.cs.hmc.edu/courses/current/cs81/boxes/
Note that I only made logic.tex; Eric Malm created hmcpset.cls over the summer, and it has since become the standard way to do problem sets for the math department.
I Can’t view it because I don’t have Tex, but awesome!
I’m in 81 right now, and using your environment. Thank you! I wasn’t looking forward to having to write proofs by hand or fudge them in Word or somesuch like Keller does. I copied the environment-setting-parts into logic.sty for convenience, but otherwise am using it unchanged. The one problem with it that I’ve found is that you can’t begin a proof with a subproof, so I just ended up starting such proofs with blank lines. I tried to fix that, but my LaTeX skills do not extend that far.
Putting it in a .sty file was a great idea; I should do that too.
Um… why are you starting your proof with a subproof? They should always start with a list of your premises (which are different from assumptions).
Unless you have something like “Prove |- (!p -> p) -> p”, where there are no premises.
Hm… good point. I’ll look into that, then. Thanks very much for the feedback!