Homework 0

REMINDER: Lab is in Stocker 192 this Friday, 8/26, 3:05-4pm. I'll be around to help!

Due: Monday, 8/29

Step 1: Install Coq.

Go to the Coq 8.4 download page, download the version of Coq 8.4 (not 8.5) appropriate for you system (e.g., the .exe file for Windows machines, the Mac .dmg disk image, or -- if you're brave -- the Coq sources). Install Coq on your machine.

If you prefer to use the lab machines in Stocker 192, feel free to do so. The Coq environment was installed there the week of 8/17/15 and should still be available.

Step 2: Download and Process Basics.v.

Once you've downloaded Basics.v, open the file in CoqIDE (installed automatically together with Coq, in Step 1). Your CoqIDE window should now look like:



Click the orange down-arrow a few times. Each time you click down-arrow, CoqIDE processes the next command in the Basics.v buffer. Progress through the buffer is marked in green.



The keyboard shortcut for down-arrow is Ctl+Alt+Down. It's often more convenient to change this just to Ctl+Down. You can do so by changing the Navigation Shortcut modifier to Ctl in the Edit->Preferences->Shortcuts menu.

In addition to processing files incrementally, you can also compile them to Coq's object .vo format. Try this out, by doing either

To test whether your compile worked, download and open Induction.v and process it through the line Require Export Basics.

Step 3: Read and complete Basics.v. Read Induction.html and Lists.html.

Following the instructions in the files, fill in the proofs and definitions for all 1- and 2-star exercises (you may skip those marked "optional") in Basics.v, at every spot marked FILL IN HERE. Read Induction.html and Lists.html.

To check that you've successfully completed a proof, change the Admitted directly after FILL IN HERE to Qed and process the buffer through the Qed.

If you're feeling ambitious, you may additionally complete *all* the exercises in all three files listed above for a small amount of extra credit! — if you do these exercises, put something like "I completed the EC" somewhere in your README. Note that you'll need to complete many of the exercises in Induction.v and Lists.v, among others, for the next assignment, so it doesn't hurt to get started early.

Once you're done, submit the file Basics.v in Blackboard, before the beginning of class on Monday, 8/29.