### Create a StudySoup account

#### Be part of our community, it's free to join!

Already have a StudySoup account? Login here

# Lecture 1 CS 61A

CAL

### View Full Document

## 6

## 1

## Popular in The Structure and Interpretation of Computer Programs

## Popular in Elect Engr & Computer Science

This 146 page Class Notes was uploaded by Scott Lee on Friday August 26, 2016. The Class Notes belongs to CS 61A at University of California Berkeley taught by John DeNero in Fall 2016. Since its upload, it has received 6 views. For similar materials see The Structure and Interpretation of Computer Programs in Elect Engr & Computer Science at University of California Berkeley.

## Similar to CS 61A at CAL

## Reviews for Lecture 1

### What is Karma?

#### Karma is the currency of StudySoup.

#### You can buy or earn more Karma at anytime and redeem it for class notes, study guides, flashcards, and more!

Date Created: 08/26/16

61A Lecture 1 Wednesday, August 24, 2016 Welcome to CS 61A! I'm John DeNero 2 Welcome to CS 61A! I'm John DeNero 2 Welcome to CS 61A! I'm John DeNero 2 Welcome to CS 61A! I'm John DeNero 2 Welcome to CS 61A! I'm John DeNero How to contact John: denero@berkeley.edu 2 Welcome to CS 61A! I'm John DeNero How to contact John: denero@berkeley.edu piazza.com/berkeley/fall2016/cs61a 2 Welcome to CS 61A! I'm John DeNero How to contact John: denero@berkeley.edu piazza.com/berkeley/fall2016/cs61a John's office hours: 781 Soda Monday & Wednesday 11am - 12pm By appointment: denero.org/meet 2 The 61A Community 3 The 61A Community 45 undergraduate student instructors / teaching assistants (TAs): 3 The 61A Community 45 undergraduate student instructors / teaching assistants (TAs): • Teach lab & discussion sections 3 The 61A Community 45 undergraduate student instructors / teaching assistants (TAs): • Teach lab & discussion sections • Hold office hours 3 The 61A Community 45 undergraduate student instructors / teaching assistants (TAs): • Teach lab & discussion sections • Hold office hours • Lots of other stuff: develop assignments, grade exams, etc. 3 The 61A Community 45 undergraduate student instructors / teaching assistants (TAs): • Teach lab & discussion sections • Hold office hours • Lots of other stuff: develop assignments, grade exams, etc. 45+ tutors & mentors: 3 The 61A Community 45 undergraduate student instructors / teaching assistants (TAs): • Teach lab & discussion sections • Hold office hours • Lots of other stuff: develop assignments, grade exams, etc. 45+ tutors & mentors: • Teach mentoring sections 3 The 61A Community 45 undergraduate student instructors / teaching assistants (TAs): • Teach lab & discussion sections • Hold office hours • Lots of other stuff: develop assignments, grade exams, etc. 45+ tutors & mentors: • Teach mentoring sections • Hold office hours 3 The 61A Community 45 undergraduate student instructors / teaching assistants (TAs): • Teach lab & discussion sections • Hold office hours • Lots of other stuff: develop assignments, grade exams, etc. 45+ tutors & mentors: • Teach mentoring sections • Hold office hours • Lots of other stuff: homework parties, mastery sections, etc. 3 The 61A Community 45 undergraduate student instructors / teaching assistants (TAs): • Teach lab & discussion sections • Hold office hours • Lots of other stuff: develop assignments, grade exams, etc. 45+ tutors & mentors: • Teach mentoring sections • Hold office hours • Lots of other stuff: homework parties, mastery sections, etc. 200+ lab assistants help answer your individual questions 3 The 61A Community 45 undergraduate student instructors / teaching assistants (TAs): • Teach lab & discussion sections • Hold office hours • Lots of other stuff: develop assignments, grade exams, etc. 45+ tutors & mentors: • Teach mentoring sections • Hold office hours • Lots of other stuff: homework parties, mastery sections, etc. 200+ lab assistants help answer your individual questions 1,500+ fellow students make CS 61A unique 3 Parts of the Course 4 Parts of the Course Lecture: Videos posted to cs61a.org before each live lecture 4 Parts of the Course Lecture: Videos posted to cs61a.org before each live lecture Lab section: The most important part of this course (next week) 4 Parts of the Course Lecture: Videos posted to cs61a.org before each live lecture Lab section: The most important part of this course (next week) Discussion section: The most important part of this course (this week) 4 Parts of the Course Lecture: Videos posted to cs61a.org before each live lecture Lab section: The most important part of this course (next week) Discussion section: The most important part of this course (this week) Staff office hours: The most important part of this course (next week) 4 Parts of the Course Lecture: Videos posted to cs61a.org before each live lecture Lab section: The most important part of this course (next week) Discussion section: The most important part of this course (this week) Staff office hours: The most important part of this course (next week) Online textbook: http://composingprograms.com 4 Parts of the Course Lecture: Videos posted to cs61a.org before each live lecture Lab section: The most important part of this course (next week) Discussion section: The most important part of this course (this week) Staff office hours: The most important part of this course (next week) Online textbook: http://composingprograms.com Weekly homework assignments, three exams, & four programming projects 4 Parts of the Course Lecture: Videos posted to cs61a.org before each live lecture Lab section: The most important part of this course (next week) Discussion section: The most important part of this course (this week) Staff office hours: The most important part of this course (next week) Online textbook: http://composingprograms.com Weekly homework assignments, three exams, & four programming projects Lots of optional special events to help you complete all this work 4 An Introduction to Computer Science What is Computer Science? 6 What is Computer Science? The study of 6 What is Computer Science? What problems can be solved using computation, The study of 6 What is Computer Science? What problems can be solved using computation, The study of How to solve those problems, and 6 What is Computer Science? What problems can be solved using computation, The study of How to solve those problems, and What techniques lead to effective solutions 6 What is Computer Science? What problems can be solved using computation, The study of How to solve those problems, and What techniques lead to effective solutions Systems 6 What is Computer Science? What problems can be solved using computation, The study of How to solve those problems, and What techniques lead to effective solutions Systems Artificial Intelligence 6 What is Computer Science? What problems can be solved using computation, The study of How to solve those problems, and What techniques lead to effective solutions Systems Artificial Intelligence Graphics 6 What is Computer Science? What problems can be solved using computation, The study of How to solve those problems, and What techniques lead to effective solutions Systems Artificial Intelligence Graphics Security 6 What is Computer Science? What problems can be solved using computation, The study of How to solve those problems, and What techniques lead to effective solutions Systems Artificial Intelligence Graphics Security Networking Programming Languages Theory Scientific Computing ... 6 What is Computer Science? What problems can be solved using computation, The study of How to solve those problems, and What techniques lead to effective solutions Systems Artificial Intelligence Graphics Security Networking Programming Languages Theory Scientific Computing ... 6 What is Computer Science? What problems can be solved using computation, The study of How to solve those problems, and What techniques lead to effective solutions Systems Artificial Intelligence Decision Making Graphics Security Networking Programming Languages Theory Scientific Computing ... 6 What is Computer Science? What problems can be solved using computation, The study of How to solve those problems, and What techniques lead to effective solutions Systems Artificial Intelligence Decision Making Graphics Robotics Security Networking Programming Languages Theory Scientific Computing ... 6 What is Computer Science? What problems can be solved using computation, The study of How to solve those problems, and What techniques lead to effective solutions Systems Artificial Intelligence Decision Making Graphics Robotics Security Natural Language Processing Networking Programming Languages Theory Scientific Computing ... 6 What is Computer Science? What problems can be solved using computation, The study of How to solve those problems, and What techniques lead to effective solutions Systems Artificial Intelligence Decision Making Graphics Robotics Security Natural Language Processing Networking Programming Languages ... Theory Scientific Computing ... 6 What is Computer Science? What problems can be solved using computation, The study of How to solve those problems, and What techniques lead to effective solutions Systems Artificial Intelligence Decision Making Graphics Robotics Security Natural Language Processing Networking Programming Languages ... Theory Scientific Computing ... 6 What is Computer Science? What problems can be solved using computation, The study of How to solve those problems, and What techniques lead to effective solutions Systems Artificial Intelligence Decision Making Graphics Robotics Security Natural Language Processing Answering Questions Networking Programming Languages ... Theory Scientific Computing ... 6 What is Computer Science? What problems can be solved using computation, The study of How to solve those problems, and What techniques lead to effective solutions Systems Artificial Intelligence Decision Making Graphics Robotics Security Natural Language Processing Answering Questions Networking Programming Languages ... Translation Theory Scientific Computing ... 6 What is Computer Science? What problems can be solved using computation, The study of How to solve those problems, and What techniques lead to effective solutions Systems Artificial Intelligence Decision Making Graphics Robotics Security Natural Language Processing Answering Questions Networking Programming Languages ... Translation Theory ... Scientific Computing ... 6 What is This Course About? 7 What is This Course About? A course about managing complexity 7 What is This Course About? A course about managing complexity Mastering abstraction 7 What is This Course About? A course about managing complexity Mastering abstraction Programming paradigms 7 What is This Course About? A course about managing complexity Mastering abstraction Programming paradigms An introduction to programming 7 What is This Course About? A course about managing complexity Mastering abstraction Programming paradigms An introduction to programming Full understanding of Python fundamentals 7 What is This Course About? A course about managing complexity Mastering abstraction Programming paradigms An introduction to programming Full understanding of Python fundamentals Combining multiple ideas in large projects 7 What is This Course About? A course about managing complexity Mastering abstraction Programming paradigms An introduction to programming Full understanding of Python fundamentals Combining multiple ideas in large projects How computers interpret programming languages 7 What is This Course About? A course about managing complexity Mastering abstraction Programming paradigms An introduction to programming Full understanding of Python fundamentals Combining multiple ideas in large projects How computers interpret programming languages Different types of languages: Scheme & SQL 7 What is This Course About? A course about managing complexity Mastering abstraction Programming paradigms An introduction to programming Full understanding of Python fundamentals Combining multiple ideas in large projects How computers interpret programming languages Different types of languages: Scheme & SQL A challenging course that will demand a lot of you 7 Alternatives to CS 61A CS 10: The Beauty and Joy of Computing 9 CS 10: The Beauty and Joy of Computing 9 CS 10: The Beauty and Joy of Computing 9 CS 10: The Beauty and Joy of Computing Designed for students without prior experience 9 CS 10: The Beauty and Joy of Computing Designed for students without prior experience A programming environment created by Berkeley, now used in courses around the world and online 9 CS 10: The Beauty and Joy of Computing Designed for students without prior experience A programming environment created by Berkeley, now used in courses around the world and online 9 CS 10: The Beauty and Joy of Computing Designed for students without prior experience A programming environment created by Berkeley, now used in courses around the world and online 9 CS 10: The Beauty and Joy of Computing Designed for students without prior experience A programming environment created by Berkeley, now used in courses around the world and online An introduction to fundamentals (& Python)
that sets students up for success in CS 61A 9 CS 10: The Beauty and Joy of Computing Designed for students without prior experience A programming environment created by Berkeley, now used in courses around the world and online An introduction to fundamentals (& Python)
that sets students up for success in CS 61A Taught in Fall 2016 by Dan Garcia 9 CS 10: The Beauty and Joy of Computing Designed for students without prior experience A programming environment created by Berkeley, now used in courses around the world and online An introduction to fundamentals (& Python)
that sets students up for success in CS 61A Taught in Fall 2016 by Dan Garcia More info: cs10.org 9 Data Science 8: Foundations of Data Science 10 Data Science 8: Foundations of Data Science Fundamentals of computing, statistical inference, & machine learning applied to real-world data sets 10 Data Science 8: Foundations of Data Science Fundamentals of computing, statistical inference, & machine learning applied to real-world data sets 10 Data Science 8: Foundations of Data Science Fundamentals of computing, statistical inference, & machine learning applied to real-world data sets Great programming practice for CS 61A 10 Data Science 8: Foundations of Data Science Fundamentals of computing, statistical inference, & machine learning applied to real-world data sets Great programming practice for CS 61A Cross-listed as CS C8, Stat C8, & Info C8 10 Data Science 8: Foundations of Data Science Fundamentals of computing, statistical inference, & machine learning applied to real-world data sets Great programming practice for CS 61A Cross-listed as CS C8, Stat C8, & Info C8 Taught in Fall 2016 by Ani Adhikari 10 Data Science 8: Foundations of Data Science Fundamentals of computing, statistical inference, & machine learning applied to real-world data sets Great programming practice for CS 61A Cross-listed as CS C8, Stat C8, & Info C8 Taught in Fall 2016 by Ani Adhikari More info: data8.org & databears.berkeley.edu 10 Course Policies Course Policies 12 Course Policies Learning 12 Course Policies Learning Community 12 Course Policies Learning Community Course Staff 12 Course Policies Learning Community Course Staff Details... http://cs61a.org/articles/about.html 12 Collaboration 13 Collaboration Asking questions is highly encouraged 13 Collaboration Asking questions is highly encouraged • Discuss everything with each other; learn from your fellow students! 13 Collaboration Asking questions is highly encouraged • Discuss everything with each other; learn from your fellow students! •Homework can be completed with a partner 13 Collaboration Asking questions is highly encouraged • Discuss everything with each other; learn from your fellow students! •Homework can be completed with a partner • Projects should be completed with a partner 13 Collaboration Asking questions is highly encouraged • Discuss everything with each other; learn from your fellow students! •Homework can be completed with a partner • Projects should be completed with a partner • Choose a partner from your discussion section 13 Collaboration Asking questions is highly encouraged • Discuss everything with each other; learn from your fellow students! •Homework can be completed with a partner • Projects should be completed with a partner • Choose a partner from your discussion section The limits of collaboration 13 Collaboration Asking questions is highly encouraged • Discuss everything with each other; learn from your fellow students! •Homework can be completed with a partner • Projects should be completed with a partner • Choose a partner from your discussion section The limits of collaboration • One simple rule: Don’t share your code, except with your partner 13 Collaboration Asking questions is highly encouraged • Discuss everything with each other; learn from your fellow students! •Homework can be completed with a partner • Projects should be completed with a partner • Choose a partner from your discussion section The limits of collaboration • One simple rule: Don’t share your code, except with your partner •Copying project solutions causes people to fail 13 Collaboration Asking questions is highly encouraged • Discuss everything with each other; learn from your fellow students! •Homework can be completed with a partner • Projects should be completed with a partner • Choose a partner from your discussion section The limits of collaboration • One simple rule: Don’t share your code, except with your partner •Copying project solutions causes people to fail • We really do catch people who violate the rules, because... 13 Collaboration Asking questions is highly encouraged • Discuss everything with each other; learn from your fellow students! •Homework can be completed with a partner • Projects should be completed with a partner • Choose a partner from your discussion section The limits of collaboration • One simple rule: Don’t share your code, except with your partner •Copying project solutions causes people to fail • We really do catch people who violate the rules, because... • We also know how to search the web for solutions 13 Collaboration Asking questions is highly encouraged • Discuss everything with each other; learn from your fellow students! •Homework can be completed with a partner • Projects should be completed with a partner • Choose a partner from your discussion section The limits of collaboration • One simple rule: Don’t share your code, except with your partner •Copying project solutions causes people to fail • We really do catch people who violate the rules, because... • We also know how to search the web for solutions •We use computers to check your work 13 Collaboration Asking questions is highly encouraged • Discuss everything with each other; learn from your fellow students! •Homework can be completed with a partner • Projects should be completed with a partner • Choose a partner from your discussion section The limits of collaboration • One simple rule: Don’t share your code, except with your partner •Copying project solutions causes people to fail • We really do catch people who violate the rules, because... • We also know how to search the web for solutions •We use computers to check your work Build good habits now 13 Expressions Types of expressions 15 Types of expressions An expression describes a computation and evaluates to a value 15 Types of expressions An expression describes a computation and evaluates to a value 18 + 69 15 Types of expressions An expression describes a computation and evaluates to a value 18 + 69 6 23 15 Types of expressions An expression describes a computation and evaluates to a value 18 + 69 6 23 p 3493161 15 Types of expressions An expression describes a computation and evaluates to a value 18 + 69 6 sin⇡ 23 p 3493161 15 Types of expressions An expression describes a computation and evaluates to a value 18 + 69 6 sin⇡ 23 p 3493161 | 1869| 15 Types of expressions An expression describes a computation and evaluates to a value 18 + 69 6 sin⇡ 23 p 3493161 X00 i i=1 | 1869| 15 Types of expressions An expression describes a computation and evaluates to a value 18 + 69 6 sin⇡ 23 p 3493161 100 X i ✓69◆ i=1 | 1869| 18 15 Types of expressions An expression describes a computation and evaluates to a value 18 + 69 6 sin⇡ 23 p f(x) 3493161 100 X i ✓ 69 i=1 | 1869| 18 15 Types of expressions An expression describes a computation and evaluates to a value 18 + 69 6 sin⇡ 23 2100 p f(x) 3493161 100 X i ✓69◆ i=1 | 1869| 18 15 Types of expressions An expression describes a computation and evaluates to a value 18 + 69 lo2 1024 6 sin⇡ 100 23 2 p 3493161 f(x) X00 i ✓ ◆ 69 i=1 | 1869| 18 15 Types of expressions An expression describes a computation and evaluates to a value 18 + 69 lo2 1024 6 sin⇡ 100 23 2 p 3493161 f(x) X00 7 mod 2 i ✓ ◆ 69 i=1 | 1869| 18 15 Types of expressions An expression describes a computation and evaluates to a value 18 + 69 lo2 1024 6 sin⇡ 100 23 2 p 3493161 f(x) X00 lim 1 7 mod 2 i ✓ ◆ x!1 x 69 i=1 | 1869| 18 15 Types of expressions An expression describes a computation and evaluates to a value 18 + 69 lo2 1024 6 sin⇡ 100 23 2 p 3493161 f(x) X00 lim 1 7 mod 2 i ✓ ◆ x!1 x 69 i=1 | 1869| 18 15 Call Expressions in Python All expressions can use function call notation (Demo) 16 Anatomy of a Call Expression 17 Anatomy of a Call Expression add ( 2 , 3 ) 17 Anatomy of a Call Expression add ( 2 , 3 ) 17 Anatomy of a Call Expression add ( 2 , 3 ) Operator 17 Anatomy of a Call Expression add ( 2 , 3 ) Operator Operand Operand 17 Anatomy of a Call Expression add ( 2 , 3 ) Operator Operand Operand Operators and operands are also expressions 17 Anatomy of a Call Expression add ( 2 , 3 ) Operator Operand Operand Operators and operands are also expressions So they evaluate to values 17 Anatomy of a Call Expression add ( 2 , 3 ) Operator Operand Operand Operators and operands are also expressions So they evaluate to values Evaluation procedure for call expressions: 17 Anatomy of a Call Expression add ( 2 , 3 ) Operator Operand Operand Operators and operands are also expressions So they evaluate to values Evaluation procedure for call expressions: 1. Evaluate the operator and then the operand subexpressions 17 Anatomy of a Call Expression add ( 2 , 3 ) Operator Operand Operand Operators and operands are also expressions So they evaluate to values Evaluation procedure for call expressions: 1. Evaluate the operator and then the operand subexpressions 2. Apply the function that is the value of the operator subexpression to the arguments that are the values of the operand subexpression 17 Evaluating Nested Expressions mul(add(4, mul(4, 6)), add(3, 5)) 18 Evaluating Nested Expressions mul(add(4, mul(4, 6)), add(3, 5)) 18 Evaluating Nested Expressions mul(add(4, mul(4, 6)), add(3, 5)) mul 18 Evaluating Nested Expressions mul(add(4, mul(4, 6)), add(3, 5)) mul add(4, mul(4, 6)) 18 Evaluating Nested Expressions mul(add(4, mul(4, 6)), add(3, 5)) mul add(4, mul(4, 6)) add 18 Evaluating Nested Expressions mul(add(4, mul(4, 6)), add(3, 5)) mul add(4, mul(4, 6)) add 4 18 Evaluating Nested Expressions mul(add(4, mul(4, 6)), add(3, 5)) mul add(4, mul(4, 6)) add 4 mul(4, 6) 18 Evaluating Nested Expressions mul(add(4, mul(4, 6)), add(3, 5)) mul add(4, mul(4, 6)) add 4 mul(4, 6) mul 4 6 18 Evaluating Nested Expressions mul(add(4, mul(4, 6)), add(3, 5)) mul add(4, mul(4, 6)) add 4 mul(4, 6) mul 4 6 18 Evaluating Nested Expressions mul(add(4, mul(4, 6)), add(3, 5)) mul add(4, mul(4, 6)) add 4 24 mul(4, 6) mul 4 6 18 Evaluating Nested Expressions mul(add(4, mul(4, 6)), add(3, 5)) mul add(4, mul(4, 6)) add 4 24 mul(4, 6) mul 4 6 18 Evaluating Nested Expressions mul(add(4, mul(4, 6)), add(3, 5)) mul 28 add(4, mul(4, 6)) add 4 24 mul(4, 6) mul 4 6 18 Evaluating Nested Expressions mul(add(4, mul(4, 6)), add(3, 5)) mul 28 add(4, mul(4, 6)) add(3, 5) add 4 24 mul(4, 6) mul 4 6 18 Evaluating Nested Expressions mul(add(4, mul(4, 6)), add(3, 5)) mul 28 add(4, mul(4, 6)) add(3, 5) add 3 5 add 4 24 mul(4, 6) mul 4 6 18 Evaluating Nested Expressions mul(add(4, mul(4, 6)), add(3, 5)) mul 28 add(4, mul(4, 6)) add(3, 5) add 3 5 add 4 24 mul(4, 6) mul 4 6 18 Evaluating Nested Expressions mul(add(4, mul(4, 6)), add(3, 5)) 8 mul 28 add(4, mul(4, 6)) add(3, 5) add 3 5 add 4 24 mul(4, 6) mul 4 6 18 Evaluating Nested Expressions mul(add(4, mul(4, 6)), add(3, 5)) 8 mul 28 add(4, mul(4, 6)) add(3, 5) add 3 5 add 4 24 mul(4, 6) mul 4 6 18 Evaluating Nested Expressions 224 mul(add(4, mul(4, 6)), add(3, 5)) 8 mul 28 add(4, mul(4, 6)) add(3, 5) add 3 5 add 4 24 mul(4, 6) mul 4 6 18 Evaluating Nested Expressions 224 mul(add(4, mul(4, 6)), add(3, 5)) 8 mul 28 add(4, mul(4, 6)) add(3, 5) add 3 5 add 4 24 mul(4, 6) mul 4 6 19 Evaluating Nested Expressions 224 mul(add(4, mul(4, 6)), add(3, 5)) 8 mul 28 add(4, mul(4, 6)) add(3, 5) add 3 5 add 4 24 mul(4, 6) mul 4 6 Expression tree 19 Evaluating Nested Expressions Operand subexpression 224 mul(add(4, mul(4, 6)), add(3, 5)) 8 mul 28 add(4, mul(4, 6)) add(3, 5) add 3 5 add 4 24 mul(4, 6) mul 4 6 Expression tree 19 Evaluating Nested Expressions Operand subexpression 224 mul(add(4, mul(4, 6)), add(3, 5)) Value of subexpression 8 mul 28 add(4, mul(4, 6)) add(3, 5) add 3 5 add 4 24 mul(4, 6) mul 4 6 Expression tree 19 Evaluating Nested Expressions Operand subexpression 224 mul(add(4, mul(4, 6)), add(3, 5)) Value of subexpression 1st argument to mul 8 mul 28 add(4, mul(4, 6)) add(3, 5) add 3 5 add 4 24 mul(4, 6) mul 4 6 Expression tree 19 Evaluating Nested Expressions Operand subexpression Value of the whole expression 224 mul(add(4, mul(4, 6)), add(3, 5)) Value of subexpression 1st argument to mul 8 mul 28 add(4, mul(4, 6)) add(3, 5) add 3 5 add 4 24 mul(4, 6) mul 4 6 Expression tree 19 Functions, Objects, and Interpreters (Demo)

### BOOM! Enjoy Your Free Notes!

We've added these Notes to your profile, click here to view them now.

### You're already Subscribed!

Looks like you've already subscribed to StudySoup, you won't need to purchase another subscription to get this material. To access this material simply click 'View Full Document'

## Why people love StudySoup

#### "I was shooting for a perfect 4.0 GPA this semester. Having StudySoup as a study aid was critical to helping me achieve my goal...and I nailed it!"

#### "When you're taking detailed notes and trying to help everyone else out in the class, it really helps you learn and understand the material...plus I made $280 on my first study guide!"

#### "Knowing I can count on the Elite Notetaker in my class allows me to focus on what the professor is saying instead of just scribbling notes the whole time and falling behind."

#### "Their 'Elite Notetakers' are making over $1,200/month in sales by creating high quality content that helps their classmates in a time of need."

### Refund Policy

#### STUDYSOUP CANCELLATION POLICY

All subscriptions to StudySoup are paid in full at the time of subscribing. To change your credit card information or to cancel your subscription, go to "Edit Settings". All credit card information will be available there. If you should decide to cancel your subscription, it will continue to be valid until the next payment period, as all payments for the current period were made in advance. For special circumstances, please email support@studysoup.com

#### STUDYSOUP REFUND POLICY

StudySoup has more than 1 million course-specific study resources to help students study smarter. If you’re having trouble finding what you’re looking for, our customer support team can help you find what you need! Feel free to contact them here: support@studysoup.com

Recurring Subscriptions: If you have canceled your recurring subscription on the day of renewal and have not downloaded any documents, you may request a refund by submitting an email to support@studysoup.com

Satisfaction Guarantee: If you’re not satisfied with your subscription, you can contact us for further help. Contact must be made within 3 business days of your subscription purchase and your refund request will be subject for review.

Please Note: Refunds can never be provided more than 30 days after the initial purchase date regardless of your activity on the site.