15-122 Principles of Imperative Computation

Fall 2015
Lecture 1, TuTh 9:00-10:20, GHC 4401, Frank Pfenning, Penny Anderson
Lecture 2, ThTh 10:30-11:50, GHC 4401, Tom Cortina
10 units

For students with a basic understanding of programming (variables, expressions, loops, arrays, functions). Teaches imperative programming and methods for ensuring the correctness of programs. Students will learn the process and concepts needed to go from high-level descriptions of algorithms to correct imperative implementations, with specific application to basic data structures and algorithms. Much of the course will be conducted in C0, a subset of C amenable to verification, with a transition to full C near the end. This course prepares students for 15-213 and 15-210.


Course Material

Schedule Lecture and recitation schedule, readings, and code
Assignments Details of assignments, due dates, and policies
Resources Additional course resources
C0 Home Page Tutorials, language reference, binary downloads

Course Information

Textbook There is no course textbook, but
lecture notes and other resources will be provided.
Labs Mondays, schedule see below
Recitations Fridays, schedule see below
Credit 10 units
Grading 25% Midterms (12.5% each), 25% Final, 45% Assignments, 5% Labs & Recitations
Assignments Assignments consist of written work and programming work for a total of 450 points.
Labs & Recitations Labs and recitations will help you review the concepts from class with the teaching assistants and do hands-on problem solving. Some points can be earned through attendance or quizzes given in lab and recitation
Midterm 1 125 points, Thu Oct 8 during lecture time
Closed book, one double-sided sheet of notes permitted
Select midterm 1 exams from prior semesters:
Fall 2012 (sample sol)
Fall 2014 (sample sol)
Spring 2015 (sample sol)
NOTE: Use these exams for practice only. Some questions may go beyond our cutoff for Midterm 1 and point totals may not match our goal of 125 points.
Midterm 2 125 points, Thu Nov 12 during lecture time
Closed book, one double-sided sheet of notes permitted
Select midterm 2 exams from prior semesters:
Fall 2012 (sample sol) (omit problem 6)
Spring 2014 (sample sol)
Spring 2015 (sample sol)
NOTE: Use these exams for practice only. Some questions may go beyond our cutoff for Midterm 2 and point totals may not match our goal of 125 points.
Final 250 points, Thursday, December 17, 8:30-11:30AM
Location: Sections A-G: GHC 4401; H-J: GHC 4307; K-U: CUC McConomy Aud.

Closed book, one double-sided sheet of notes permitted.
Select final exams from prior semesters:
Fall 2012 (sample sol)
Spring 2013 (sample sol)
Spring 2015 (sample sol)
Home http://www.cs.cmu.edu/~fp/courses/15122-f15/
http://www.cs.cmu.edu/~tcortina/courses/15122-f15 (redirects to first link)
Piazza https://piazza.com/#fall2015/15122
Course communication
Autolab https://autolab.cs.cmu.edu/15122-f15
Online handing for programming assignments
Directory /afs/andrew.cmu.edu/course/15/122/

Lectures

Lecture Section Time Location Instructor Contact Office Office Hours
Lec 1 TR 9:00-10:20AM GHC 4401 Frank Pfenning fp@cs GHC 7019 Thu 10:30am-12:00
Lec 1 Penny Anderson annpenny@andrew GHC 6007 Thursdays 3:00-4:20PM
Lec 2 TR 10:30-11:50AM GHC 4401 Tom Cortina tcortina@cs GHC 4117 Mondays 10:30AM-12:00Noon
(written homework help)

Course Staff

Andrew Benson
Andrew Benson
Aaron Gutierrez
Aaron Gutierrez
Amolak Nagi
Amolak Nagi
Christine Lee
Christine Lee
Cortney Padua
Cortney Padua
DeeDee Han
DeeDee Han
Edward Cai
Edward Cai
Edward Ahn
Edward Ahn
Grant Wu
Grant Wu
Jonathan Burns
Jonathan Burns
Jing Mao
Jing Mao
James Wu
James Wu
Fletcher Woodruff
Fletcher Woodruff
Andrew Low
Andrew Low
Karan Dhabalia
Karan Dhabalia
Matt Harding
Matt Harding
Manik Panwar
Manik Panwar
Nate Horan
Nate Horan
Steven Bunting
Steven Bunting
Shyam Raghavan
Shyam Raghavan
Suhaas Reddy
Suhaas Reddy
Ted Kern
Ted Kern
Valentina Kozina
Valentina Kozina
Will Ganucheau
Will Ganucheau
William Tong
William Tong

Labs

Lecture Section Time Location Assistants Contacts
Lec 1 A M 9:30-10:20AM GHC 5208 Nate Horan nhoran@andrew
Lec 1 B M 10:30-11:20AM GHC 5208 Grant Wu grantwu@andrew
Lec 1 C M 11:30AM-12:20PM GHC 5208 Manik Panwar mpanwar@andrew
Lec 1 D M 12:30-1:20PM GHC 5208 William Tong wxt@andrew
Lec 1 E M 1:30-2:20PM GHC 5208 Edward Ahn esahn@andrew
Lec 1 F M 2:30-3:20PM GHC 5208 William Tong wxt@andrew
Lec 1 G M 3:30-4:20PM GHC 5208 Steven Bunting sbunting@andrew
Lec 1 H M 9:30-10:20AM GHC 5207 Andrew Low kahkhanl@andrew
Lec 1 I M 11:30AM-12:20PM GHC 5207 Ted Kern tkern@andrew
Lec 1 J M 1:30-2:20PM GHC 5207 Andrew Low kahkhanl@andrew
Lec 2 K M 9:30-10:20AM GHC 5210 Manik Panwar mpanwar@andrew
Lec 2 L M 10:30-11:20AM GHC 5210 Amolak Nagi amolakn@andrew
Lec 2 M M 11:30AM-12:20PM GHC 5210 Edward Ahn esahn@andrew
Lec 2 N M 12:30-1:20PM GHC 5210 DeeDee Han dthan@andrew
Lec 2 O M 1:30-2:20PM GHC 5210 William Ganucheau wganuche@andrew
Lec 2 P M 2:30-3:20PM GHC 5210 James Wu jingzew@andrew
Lec 2 Q M 3:30-4:20PM GHC 5210 Jonathan Burns jaburns@andrew
Lec 2 R M 10:30-11:20AM GHC 5207 Karan Dhabalia kdhabali@andrew
Lec 2 S M 12:30-1:20PM GHC 5207 Ted Kern tkern@andrew
Lec 2 T M 2:30-3:20PM GHC 5207 Jonathan Burns jaburns@andrew
Lec 2 U M 3:30-4:20PM GHC 5207 Matt Harding mharding@andrew
Additional support provided by:
Sections Time Assistant(s) Contact(s)
A,H,K M 9:30-10:20AM William Ganucheau
Amolak Nagi
wganuche@andrew
amolakn@andrew
B,L,R M 10:30-11:20AM Nate Horan nhoran@andrew
C,I,M M 11:30AM-12:20PM Matt Harding
Jing Mao
mharding@andrew
jingmao@andrew
D,N,S M 12:30-1:20PM Andrew Benson adbenson@andrew
E,J,O M 1:30-2:20PM Grant Wu grantwu@andrew
F,P,T M 2:30-3:20PM DeeDee Han
Steven Bunting
dthan@andrew
sbunting@andrew
G,Q,U M 3:30-4:20PM Karan Dhabalia kdhabali@andrew

Recitations

Lecture Section Time Location Assistants Contacts
Lec 1 A F 9:30-10:20AM GHC 4215 Cortney Padua cpadua@andrew
Lec 1 B F 10:30-11:20AM WEH 5415 Suhaas Reddy suhaasr@andrew
Lec 1 C F 11:30AM-12:20PM SH 214 Shyam Raghavan shyamsur@andrew
Lec 1 D F 12:30-1:20PM WEH 4623 Cortney Padua cpadua@andrew
Lec 1 E F 1:30-2:20PM GHC 4102 Edward Cai ehcai@andrew
Lec 1 F F 2:30-3:20PM SH 214 Fletcher Woodruff jwoodruf@andrew
Lec 1 G F 3:30-4:20PM GHC 4102 Chris Lee christi3@andrew
Lec 1 H F 9:30-10:20AM WEH 5320 Valentina Kozina vik@andrew
Lec 1 I F 11:30AM-12:20PM WEH 5310 Jing Mao jingmao@andrew
Lec 1 J F 1:30-2:20PM PH 125B Chris Lee christi3@andrew
Lec 2 K F 9:30-10:20AM GHC 4215 Suhaas Reddy suhaasr@andrew
Lec 2 L F 10:30-11:20AM WEH 5415 Valentina Kozina vik@andrew
Lec 2 M F 11:30AM-12:20PM SH 214 Andrew Benson adbenson@andrew
Lec 2 N F 12:30-1:20PM WEH 4623 Shyam Raghavan shyamsur@andrew
Lec 2 O F 1:30-2:20PM GHC 4102 James Wu jingzew@andrew
Lec 2 P F 2:30-3:20PM SH 214 James Wu jingzew@andrew
Lec 2 Q F 3:30-4:20PM GHC 4102 Andrew Benson adbenson@andrew
Lec 2 R F 10:30-11:20AM SH 208 Flecther Woodruff jwoodruf@andrew
Lec 2 S F 12:30-1:20PM PH A18C Aaron Gutierrez amgutier@andrew
Lec 2 T F 2:30-3:20PM SH 219 Edward Cai ehcai@andrew
Lec 2 U F 3:30-4:20PM GHC 4211 Aaron Gutierrez amgutier@andrew

Extra Help Evening Hours

Help Hours Location
Mondays 6:00-7:30PM Citadel Commons (GHC 5th floor) - Conceptual Help only, no homework
Mondays 7:30-9:30PM WEH 6423
Tuesdays 5:30-9:30PM GHC 4215
Wednesdays 5:30-9:30PM GHC 4211
Thursdays none (plan ahead!)
Fridays 5:30-9:30PM GHC 4101
Saturdays 3:00-5:00PM GHC 4215
Sundays 3:00-5:00PM GHC 4215

Walk-in Tutoring

Walk-in Tutoring, sponsored by Academic Development, is available Sundays, Mondays and Tuesdays, 8:30pm-11:00pm in the Mudge Reading Room.

Academic Development, located in Cyert Hall, provides academic coaching, peer tutoring, supplemental instruction, time management advising, and collaborative learning groups for a number of subjects.

Students with Disabilities

Students with documented disabilities may be eligible to receive services/accomodations from CMU's Equal Opportunity Services (EOS) office. For more information, visit: http://www.cmu.edu/hr/eos/disability/students/

[ Home | Schedule | Assignments | Resources ]
[ Piazza | Autolab ]

fp@cs, Frank Pfenning
tcortina@cs, Tom Cortina