Courses/CS 460/Fall 2005
From CSWiki
References | Homework | Questions | Course notes | Oz notes
Contents |
[edit] Individual meetings
Instead of class this week (Nov 5), I'd like to see you each individually for 10 minutes. You may switch meeting times if you can find someone who will switch with you.
In preparation, please make sure that you have a homework page for youself as a subpage of the class homework page and that you have your weekly homework submissions liked to from that page as well as from the class homework page. See Subpages for a reminder of how this works.
On your homework page, please note the weeks in which you presented a homework solution in class.
Remember that, for example, [[/Homework/Jeff Bailey | Jeff Bailey]] refers to the page named Jeff Bailey which is a subpage of the page named Homework, which is a subpage of this page. Also recall that the preceding link display the text Jeff Bailey.
Recall also that when you create a page whose name includes spaces, MediaWiki replaces the spaces with underscores. So [[/Homework/Jeff Bailey | Jeff Bailey]] is actually the page [[/Homework/Jeff_Bailey | Jeff Bailey]], but you can leave out the underscore when referring to it.
If you have created a homework page for yourself which isn't the same as the link I put into the table, please change the table. You don't have to re-build your homework page. It's actual name isn't important as long as it's clear that it's your page.
[edit] Nov 5 Meeting schedule
A checkmark (
) means that you came to the appointment.
Time Homework page 9:30 Jeff Bailey 9:40 Kelly Breed 9:50 Josh Cain 10:00 Oscar Chen 10:10 Teodoro Cruz 10:20 Jay Donnell 10:30 Andre Liv 10:40 available 10:50 Henry Nguyen 11:00 Nghia Phan 11:10 Julian Renteria 11:20 Brian Smith 11:30 Alfredo Tigolo 11:40 available 11:50 Xuong Tsan 12:00 Sean Tseng 12:10 Francisco Velazquez 12:20 Yun Xing 12:30 Cynthia York 12:40 Joey Leung
[edit] Final meeting schedule
When you sign up, please use the same format as for the Nov 5 meeting:
Time Homework page 10:00 10:30 Joey Leung 11:00 Andre Liv 11:30 12:00 12:30
[edit] References
[edit] Course syllabus
[edit] Mozart-Oz
- What programmers should know about Oz
- Download Mozart-Oz and emacs
- Oz code from CTM
- Mozart Oz Documentation
- Oz Base Environment (built-in procedures and functions)
- Global Index
an index to all the documentation and especially to all the built-in and module functions.
Points to other documents, including the Oz Base Environment and the Finite Domain tutorial. - For a Google search of the Mozart-Oz.org website, include site:Mozart-oz.org in your search.
- An unofficial Mozart-Oz "virtual manual," a collection of pointers to documents of various sorts. It is a page in a Mozart-Oz wiki.
- SolveAll
[edit] Tutorials
- Oz introduction
- Oz tutorial
- Peter Van Roy's Logic Progamming in Oz
- Concurrent logic programming in Oz
- Finite Domains (FD)
- Finite Domain (FD) tutorial
- Finite Domain Constraints, the FD module
- FD examples
- Concurrent Constraint Programming in Oz for Natural Language Processing Apparently a fairly complete Oz course that "presupposes as few knowledge as possible, so that it can address students of computer science and computational linguistics simultaneously." Section 2 covers the Oz Concurrent Constraint Programming model. (Section 3 is the linguistics part of the course.)
- Constraint Programming Module
- Christian Schulte's slides on constraint programming. Uses SEND + MORE = MONEY to illustrate Oz and its environment. (I was unable to put this link in the References box when I used the DIV Template. This must be a bug in the MediaWiki Template system.)
[edit] Other constraint programming references
- Roman Barták's On-line guide to constraint programming
- Summer School papers
- Wikipedia's Constraint Programming
[edit] Puzzles
[edit] Logic puzzles
[edit] Sudoku
- Simplified Sudoku Solver
- Paper on Sudoku as a Constraint Problem
- Slides from talk on Sudoku as a Constraint Problem
[edit] Other
Thinking Machine chess visualization
[edit] Pictures
I would like you to put a picture of yourself on your user page. I took pictures of some of you. (I forgot that I was going to do it and didn't take pictures of everyone. I'll try again next week.) You can use the picture I took or some other picture of your choice. The pictures I took are at http://www.imagestation.com/album/pictures.html?id=2119928443 To access the album (called "CS Fall '05"), you may have to log on. You can create your own username and password or use one that I generated for this purpose.
username: CulverCity
password: Pictures
Note that it isn't necessary to copy or upload pictures. You can simply put the URL on your page. For example,
<div style = "float:right"> http://moodle.org/user/pix.php/20145/f1.jpg <</div>
puts my picture (floated to the right) on the page. It refers to the picture stored on the web page
http://moodle.org/user/pix.php/20145/f1.jpg
See Russ Abbott to see how it looks. </div>
[edit] Textbook (Commonly known as CTM)
Van Roy and Haridi,
Concepts, Techniques, and Models
of Computer Programming
(Commonly known as CTM.)
Van Roy and Haridi, Concepts, Techniques, and Models of Computer Programming.
Please bring the textbook to class. The online tutorial is useful, but it doesn't have nearly the depth of the textbook.
Peter Van Roy's slides describing the book.
What seems like a preliminary draft of CTM.
[edit] Course plan
The plan for the course is to cover Chapters 1, 2, 3, 9, and 12 of the text. We will focus specifically on the material that leads up to the Finite Domain Constraint solver (Chapter 12). Other material in these chapters will get lighter coverage or none at all.
If you want to look ahead, when I posted my plans for the course on the Mozart-Oz user mailing list, someone posted a Sudoku solver. Here's a revised version. (You may be interested in joining the mailing list.)
If we finish with this material, we will look into other aspects of Oz.
[edit] Homework
At the end of the term, rather than a mass final, I will meet with you each individually. The primary topic of discussion will be the homework pages that you create during the term and your willingness to present them in class.

