Difference between revisions of "CS 303 final"

From Computer Science
Jump to: navigation, search
(Last HW assignment problems)
(Exam Interview)
 
(29 intermediate revisions by the same user not shown)
Line 1: Line 1:
=Final Exam Outline=
+
For [[CS 303]].
''Working on this, will email the class when it's ready.''
+
 
 +
__TOC__
 +
 
 +
=Spring 2023=
 +
 
 +
==Final Exam Short Answer / Essay==
 +
The exam slot on Wednesday, May 3, 1-2:50pm will be for short answer / essay questions. You will have the following to answer.
 +
# '''Irrational proof.''' Each of you will get a different irrational proof to complete.  E.g., prove the cube root of 12 is irrational, or the 4th root of 25, etc. Note that each is slightly different, and all are slightly different than proving the sqrt(2) is irrational.
 +
# '''Counting.''' There will be a few short questions asking for how many ___, similar to some of the hw problems.
 +
# '''Big O.''' There will be one question where you have to put a list of functions in order from smallest to largest (in terms of big O asymptotic growth). You can expect some of the functions to be easy, and some to be strange (like on the hw problem like this).
 +
# '''Induction.''' One new induction proof that is hopefully not too difficult, but a problem that you have not seen before.
 +
 
 +
This means you have 2 proofs (irrational proof, and induction) and 2 questions that will be working out a series of problems (counting, and Big O).  These will count as those problem types for the final grade calculations.
 +
 
 +
There will be a Canvas quiz that is available during the exam slot to answer these questions. The rules will be the same as always: no using other people or AIs, you are required to be face to face if you are in the face to face section, proofs need to be well written and correct.
 +
 
 +
==Canvas Quizzes==
 +
Quizzes will all be available to retake May 1, 10am-noon. If there are any where your highest score in Canvas is less than 70%, then you should retake those. If you have time, then you should retake any that you have less than 80%, or less than 90%.
 +
 
 +
==Exam Interview==
 +
You can sign up for an exam interview slot that will work similarly to the midterm exam interview. I would pick some problems that you did not get correct that you need to get still from the hw's, and ask you to solve them for me. Or, you can pick some hw problems that you can now demonstrate for me, and you would demonstrate. Note that in either case I may change the problem slightly for what you show me to confirm that you do indeed know how to solve it (and did not just get help from someone to solve the particular numbers on your problem on the assignment).
 +
 
 +
If you are in the face to face section, then you should sign up for a face to face interview.
 +
 
 +
You can do the exam interview at any point up until May 3.
 +
 
 +
This is not required, you only need to do this if you will not have enough hw problems correct to get the grade you want.
 +
 
 +
The link for scheduling your slot: https://cs.indstate.edu/jkinne-meeting
 +
 
 +
=Fall 2022=
 +
 
 +
==Final Exam Outline==
 
* Canvas quizzes - all taken during our 2 hour final exam slot (in the classroom if possible, if you need to take these at another time you can ask), Wednesday Dec 7 from 1-3pm.  If you are in the face to face section and want to take it remotely, you need to ask for permission.  If you are in either section and want to take it at a different time, you need to ask for permission.
 
* Canvas quizzes - all taken during our 2 hour final exam slot (in the classroom if possible, if you need to take these at another time you can ask), Wednesday Dec 7 from 1-3pm.  If you are in the face to face section and want to take it remotely, you need to ask for permission.  If you are in either section and want to take it at a different time, you need to ask for permission.
 
** From midterm: math notation, math and bases, logic, number theory, miscellaneous math, functions and relations, sets.
 
** From midterm: math notation, math and bases, logic, number theory, miscellaneous math, functions and relations, sets.
** New since then: graphs, big O asymptotics, algorithm running times / recursion tree, complexity classes, regular expressions / languages, probability.  And there will be practice versions of these.
+
** New since then: (see [https://indstate.instructure.com/courses/12565/quizzes here] for practice versions of these, at the bottom of the page) big O asymptotics, regular expressions / languages, graphs,  algorithm running times / complexity classes, <del>probability</del>.  
* Interview - will be just doing proofs for some of the main things we have looked at. You have notes written up on these so that you'll be able to demonstrate any of them I ask.  You will turn in your notes, but I may not look at them - the grade will be mostly based on the interviewInclude references/citations for what you use to make your notes. I will let you know the problems once I have made them up.  Interview times - any time after I post more details on the final (probably by Nov 28 or 29) and up through Dec 9 at noonThose in the face to face section are required to do this in person (unless you get approval from me). You will schedule a time, the same as last time with https://cs.indstate.edu/scheduler
+
* Interview - will be just doing proofs for some of the main things we have looked at. You will work these out ahead of time and turn in your work.  You will use your notes to explain the proof to me (like you are teaching the material)You can consult what is required for each letter grade level for what you should work on. If you still have some problems from the D and C levels to demonstrate, then pick some of those to demonstrate as part of the final.  Beyond that, pick the ones that are required for the grade level you hope to reach. You will schedule times to show these to me using the same link as normal - https://cs.indstate.edu/scheduler - but note that the slots are 15 minutes each so that you can also schedule multiple ones of these as you finish problems that you are ready to demonstrate.  '''You can keep scheduling these slots up through Dec 11 (though you should not plan to wait until then, because if you do then there may not be any slots and you may not have enough time to get these done properly)'''.
** Root of a number is irrational - like on the midterm
+
*# Problems from previous assignments or midterm - if you still need to "pass" problem types that will not be graded any more (proof that a number is irrational, truth tables) then you should fix these problems and plan to present them. I may ask follow up questions in addition to the question as it was originally on your HW or midterm.  Note - once the induction, graphs, asymptotics, and additional HW problems are past due, if you still need to "pass" any of those, then you can ask about presenting those as well if you still need them.
** Truth tables - like on the midterm
+
*# There are infinitely many primes - only required for those shooting for at least a B.
** Euclidean algorithm - proof that it is correct
+
*# Running time of: binary search (required for getting a B or higher in the course), merge sort (required for getting an A or higher in the course).
** An induction proof - arithmetic or geomteric sum, or something similar
+
*# The real numbers are not countable - only required for those shooting for an A
** Running time of: binary search, merge sort, others we looked at in class
+
*# An NP problem is in NP (only required for those shooting for an A) - pick one of these to write up (explanation of why the problem is in NP - for a "yes" instance, what is the certificate and roughly what is the running time to check it), be prepared to talk about the others as well - Clique, Traveling Salesperson, Longest Path, Set Cover, Subset Sum.
** The real numbers are not countable (and similar)
 
** The rational numbers are countable (and similar)
 
** There are infinitely many primes
 
** An NP problem is in NP - one we did in class
 
  
=Last HW assignment problems=
+
==Last HW assignment problems==
 
Jeff will write up solutions and decide which ones actually get looked at.
 
Jeff will write up solutions and decide which ones actually get looked at.
  
Line 58: Line 86:
 
* Discrete probability
 
* Discrete probability
  
=Final Letter Grages=
+
==Final Letter Grades==
 +
Note - see [https://indstate.instructure.com/courses/12565/quizzes here] (towards the bottom) for practice quizzes.
 +
 
 
CS 303 final letter grade
 
CS 303 final letter grade
 
* canvas quiz: stand-alone quiz, mid-term part, or final part
 
* canvas quiz: stand-alone quiz, mid-term part, or final part
* canvas quizzes need 90%+ at least once and last attempt not below 80%
+
* essays need a pass rating (2/2 for HW, 80%+ for midterm/final problem)
* essays need a pass rating (2/2 for HW, 90%+ for midterm/final problems)
 
 
* +/- on letter grade will be determined within each level based on how close to the next level you are
 
* +/- on letter grade will be determined within each level based on how close to the next level you are
  
D- level: finish the course, I will let anyone know if they are in danger of missing this level
+
D- level: finish the course, you must have at least attempted and submitted all of the HW assignments and quizzes, and take the final exam
  
 
D level:  
 
D level:  
 
* canvas quizzes: math notation, math and bases, logic, number theory
 
* canvas quizzes: math notation, math and bases, logic, number theory
 +
* quiz minimum score: 80%
 
* essays: truth table (at least 1), induction proof (at least 1)
 
* essays: truth table (at least 1), induction proof (at least 1)
  
C level:  
+
C level: can move on to the next course(s)
 
* canvas quizzes: misc math, functions/relations, sets, big O asymptotics, regular expressions / languages
 
* canvas quizzes: misc math, functions/relations, sets, big O asymptotics, regular expressions / languages
 +
* quiz minimum score: 80%
 
* essays: truth table (at least 2), induction proof (at least 3), graphs (at least 1), irrational number
 
* essays: truth table (at least 2), induction proof (at least 3), graphs (at least 1), irrational number
  
B level:  
+
B level: you are "ok" to move on
* canvas quizzes: graphs, algorithm running times / recursion tree, complexity classes, probability
+
* canvas quizzes: graphs, algorithm running times / complexity classes
* essays: truth table (at least 3), induction proof (at least 5), graphs (at least 2), asymptotics (at least 1)
+
* quiz minimum score: 80%
 +
* essays: truth table (at least 3), induction proof (at least 5), graphs (at least 2), asymptotics (at least 1), there are infinitely many primes, running time of binary search
  
 
A level:  
 
A level:  
* canvas quizzes:  
+
* canvas quizzes: ''<del>probability</del>''
* essays: induction proof (at least 8), graphs (at least 4), asymptotics (at least 3), the real #s are not countable, there are infinitely many primes, NP problem is in NP
+
* quiz minimum score: 90% (also for all D, C, B level quizzes)
 +
* essays: induction proof (at least 8), graphs (at least 4), asymptotics (at least 3), the real #s are not countable, NP problem is in NP, running time of merge sort

Latest revision as of 17:55, 27 April 2023

For CS 303.

Spring 2023

Final Exam Short Answer / Essay

The exam slot on Wednesday, May 3, 1-2:50pm will be for short answer / essay questions. You will have the following to answer.

  1. Irrational proof. Each of you will get a different irrational proof to complete. E.g., prove the cube root of 12 is irrational, or the 4th root of 25, etc. Note that each is slightly different, and all are slightly different than proving the sqrt(2) is irrational.
  2. Counting. There will be a few short questions asking for how many ___, similar to some of the hw problems.
  3. Big O. There will be one question where you have to put a list of functions in order from smallest to largest (in terms of big O asymptotic growth). You can expect some of the functions to be easy, and some to be strange (like on the hw problem like this).
  4. Induction. One new induction proof that is hopefully not too difficult, but a problem that you have not seen before.

This means you have 2 proofs (irrational proof, and induction) and 2 questions that will be working out a series of problems (counting, and Big O). These will count as those problem types for the final grade calculations.

There will be a Canvas quiz that is available during the exam slot to answer these questions. The rules will be the same as always: no using other people or AIs, you are required to be face to face if you are in the face to face section, proofs need to be well written and correct.

Canvas Quizzes

Quizzes will all be available to retake May 1, 10am-noon. If there are any where your highest score in Canvas is less than 70%, then you should retake those. If you have time, then you should retake any that you have less than 80%, or less than 90%.

Exam Interview

You can sign up for an exam interview slot that will work similarly to the midterm exam interview. I would pick some problems that you did not get correct that you need to get still from the hw's, and ask you to solve them for me. Or, you can pick some hw problems that you can now demonstrate for me, and you would demonstrate. Note that in either case I may change the problem slightly for what you show me to confirm that you do indeed know how to solve it (and did not just get help from someone to solve the particular numbers on your problem on the assignment).

If you are in the face to face section, then you should sign up for a face to face interview.

You can do the exam interview at any point up until May 3.

This is not required, you only need to do this if you will not have enough hw problems correct to get the grade you want.

The link for scheduling your slot: https://cs.indstate.edu/jkinne-meeting

Fall 2022

Final Exam Outline

  • Canvas quizzes - all taken during our 2 hour final exam slot (in the classroom if possible, if you need to take these at another time you can ask), Wednesday Dec 7 from 1-3pm. If you are in the face to face section and want to take it remotely, you need to ask for permission. If you are in either section and want to take it at a different time, you need to ask for permission.
    • From midterm: math notation, math and bases, logic, number theory, miscellaneous math, functions and relations, sets.
    • New since then: (see here for practice versions of these, at the bottom of the page) big O asymptotics, regular expressions / languages, graphs, algorithm running times / complexity classes, probability.
  • Interview - will be just doing proofs for some of the main things we have looked at. You will work these out ahead of time and turn in your work. You will use your notes to explain the proof to me (like you are teaching the material). You can consult what is required for each letter grade level for what you should work on. If you still have some problems from the D and C levels to demonstrate, then pick some of those to demonstrate as part of the final. Beyond that, pick the ones that are required for the grade level you hope to reach. You will schedule times to show these to me using the same link as normal - https://cs.indstate.edu/scheduler - but note that the slots are 15 minutes each so that you can also schedule multiple ones of these as you finish problems that you are ready to demonstrate. You can keep scheduling these slots up through Dec 11 (though you should not plan to wait until then, because if you do then there may not be any slots and you may not have enough time to get these done properly).
    1. Problems from previous assignments or midterm - if you still need to "pass" problem types that will not be graded any more (proof that a number is irrational, truth tables) then you should fix these problems and plan to present them. I may ask follow up questions in addition to the question as it was originally on your HW or midterm. Note - once the induction, graphs, asymptotics, and additional HW problems are past due, if you still need to "pass" any of those, then you can ask about presenting those as well if you still need them.
    2. There are infinitely many primes - only required for those shooting for at least a B.
    3. Running time of: binary search (required for getting a B or higher in the course), merge sort (required for getting an A or higher in the course).
    4. The real numbers are not countable - only required for those shooting for an A
    5. An NP problem is in NP (only required for those shooting for an A) - pick one of these to write up (explanation of why the problem is in NP - for a "yes" instance, what is the certificate and roughly what is the running time to check it), be prepared to talk about the others as well - Clique, Traveling Salesperson, Longest Path, Set Cover, Subset Sum.

Last HW assignment problems

Jeff will write up solutions and decide which ones actually get looked at.

Additional problems

  1. Recursion tree / recurrence relation. Suppose we have a recursive algorithm that solves a problem by splitting the size n problem into 4 different problems of size n/2, solves the smaller problems, and takes O(n) time putting the solutions together to be a solution to the size n problem. What is the running time of the algorithm? Use a recursion tree to demonstrate your solution.
  2. NP. Show that the following problem is contained within NP. We are given a list of x courses, and n students and the courses for each that they want to take in the spring, and we are also given a list of m teachers and the list of classes that they can teach. The goal is to determine whether there is a schedule so that all students are able to take all of the courses they want to, with the courses being taught by teachers who can teach them. Assume that courses are scheduled from 9am-4pm MWF and 9:30am-3:30pm on TR. NP - given the right certificate you can check that the answer is "yes" efficiently.
  3. Complexity classes. For each of the following problems, what the smallest complexity class that the decision version of the problem fits into, and why? Complexity classes are: P, NP, EXP, none of these. P - polynomial time, NP - nondeterministic polynomial time, EXP - exponential time (2n10).
    1. Sorting
    2. Factoring an integer
    3. Matrix multiplication
    4. Given a graph, decide whether the graph is connected
    5. Given a Python program, and an input to the program of length n, does the program ever halt.
    6. Given a Python program, and an input to the program of length n, does the program complete within time 2n time.
    7. Given a Python program, and an input to the program of length n, does the program complete within time n2.
  4. For each of the following, give a regular expression, DFA, or NFA for the language. Note - you should make sure to choose regular expression for at least two and DFA or NFA for at least two.
    1. binary strings with an even # of 1s
    2. binary strings that start and end with the same bit
    3. binary strings that somewhere contain 00 and 11
    4. binary strings that somewhere contain 00 or 11
    5. binary strings that are at most 4 bits long
    6. binary strings that are exactly 4 bits long
  5. Which of these are countable, which are not.
    1. integers
    2. rationals
    3. even integers
    4. multiples of 100
    5. real numbers
    6. rational #s between 0 and 1
    7. real #s between 0 and 1
    8. powerset of the integers
    9. powerset of the rationals
    10. powerset of the even integers
    11. powerset of the real numbers

Things that will likely go onto a quiz or on the final.

  • Combinations, permutations, etc.
  • Binomial theorem. Something, maybe.
  • Undecidable problems. Something, maybe.
  • Discrete probability

Final Letter Grades

Note - see here (towards the bottom) for practice quizzes.

CS 303 final letter grade

  • canvas quiz: stand-alone quiz, mid-term part, or final part
  • essays need a pass rating (2/2 for HW, 80%+ for midterm/final problem)
  • +/- on letter grade will be determined within each level based on how close to the next level you are

D- level: finish the course, you must have at least attempted and submitted all of the HW assignments and quizzes, and take the final exam

D level:

  • canvas quizzes: math notation, math and bases, logic, number theory
  • quiz minimum score: 80%
  • essays: truth table (at least 1), induction proof (at least 1)

C level: can move on to the next course(s)

  • canvas quizzes: misc math, functions/relations, sets, big O asymptotics, regular expressions / languages
  • quiz minimum score: 80%
  • essays: truth table (at least 2), induction proof (at least 3), graphs (at least 1), irrational number

B level: you are "ok" to move on

  • canvas quizzes: graphs, algorithm running times / complexity classes
  • quiz minimum score: 80%
  • essays: truth table (at least 3), induction proof (at least 5), graphs (at least 2), asymptotics (at least 1), there are infinitely many primes, running time of binary search

A level:

  • canvas quizzes: probability
  • quiz minimum score: 90% (also for all D, C, B level quizzes)
  • essays: induction proof (at least 8), graphs (at least 4), asymptotics (at least 3), the real #s are not countable, NP problem is in NP, running time of merge sort