- Home
- Search
- Amit Sahai
- All Reviews

Amit Sahai
AD
Based on 26 Users
What an amazing experience CS181 with Professor Sahai was. If you like mathematics, you are in for an absolute treat. Professor Sahai, in his own words, conducts the "advanced mathematical version" of CS181. Anyone who wants to take this class must be prepared to invest a considerable amount of effort. But the rewards are entirely commensurate with the effort.
Professor Sahai's lectures involve extensive interactions with students and opportunities abound for extra credit. The homeworks, midterm and exam are all very interesting, and several questions are challenging. Some of them really require meditation and contemplation over the course of several days, and are not at all the type of questions that can be solved in one sitting of a few hours. Several ideas only came to my head while I was in the shower, walking around campus, or eating dinner. These ideas require time to germinate and develop. This is how mathematics is supposed to be done.
This was by far the best CS class I ever took at UCLA. And Professor Sahai was the best professor I encountered in CS.
Let me tell you something, boys and girls. Idk why the top review is from like 2012, but Sahai in his current form is a beast of an educator. Sahai is one of the few lecturers I can recommend for anyone looking to actually make the most of their CS education. If you just want an ez A, you should avoid his class. But if you actually care about the learning computer science, look no further. Sahai ticks several very important boxes:
☑️ Supreme command of the subject matter. Sahai's class organically develops from student input. He is able to dynamically take student suggestions and run with them on the fly, while maintaining good pedagogical direction.
☑️ Interactive lectures. You feel like you really make a creative difference when you speak up in class, rather than parroting some preset answer. With the first point, this means that the overall direction of lectures is mediated by Sahai, but the examples used to demonstrate and elucidate concepts come from the floor.
☑️ Nice & enthusiastic. The top answer says Sahai can be condescending, but I haven't seen this so far. Maybe he got better at being nice. He will repeat explanations that you don't understand, and often from a different angle to make it more likely that you understand. Also, you can just feel his bubbly enthusiasm for the subject matter when he speaks.
Note that his class is the "advanced mathematical" version of 181 [sic Sahai]. If you truly feel no love for theory, or if you just need to take it easy this quarter, you should probably take it with someone else. I heard the other lecturers are also really good. But if you can handle some math and you want to go hard, I place Sahai among the legends of UCLA CS educators. You're paying fat stacks to go here. Do yourself a favor and make the most of that money and your time.
I took this class as a senior, and I can say that CS 181 with Prof. Sahai is easily the best course I've taken at UCLA. (And yes, that does include CS 32 with Carey Nauchenberg.)
Automata theory and computability probably won't be useful in my career, but I still think this is one of the most valuable classes in the CS curriculum at UCLA. This class will make you a better problem solver. A lot of the questions in this class are intuitive and easy to understand, but translating ideas into formal solutions can be so, so hard. If you've ever attempted Leetcode questions and thought "The solution seems so obvious...but I just don't know how to do it," you know this feeling. Sahai's class teaches you how to isolate intuition, address its shortcomings, and then use it to guide you toward a correct solution. Frameworks and languages will become outdated, but this process of dissecting a problem is something any software engineer can always use. If you have any interest in solving challenging problems in your career, this class is a must-take. It's the equivalent of a pro athlete going to the gym to lift weights.
- Lectures in CS 181 are unlike any lectures in the CS department. They're all student-driven, so students ask motivating questions and others can respond and drive the discussion. Extra credit is awarded for questions and answers (both right and wrong!). Trust me, I skip most of my lectures to watch them at 2-3x speed, but I looked forward to going to CS 181 every week. I've yet to take a class with a professor better at explaining difficult concepts than Sahai.
- Problem sets are difficult but highly rewarding. There's plenty of extra credit -- lots of extra credit homework problems and you get an automatic 5% (maybe 10%? I forgot) extra credit for typing your solutions in LaTeX. I would recommend looking at problems as soon as homework assignments are assigned, and then just let them sit in the back of your head for a few days. There are 6 problem sets, most of them usually 2-3 questions long, but they can be pretty hard.
- Grades are curved without extra credit, and then EC is applied. This makes the average closer to a B+/A-.
- Stick out the first two weeks! I was close to dropping the class because deterministic finite state machines are pretty boring, but it ramps up quickly.
Terrible professor.
Loved taking this class with Pf. Sahai. As other reviewers here say, this is the "advanced mathematical" offering of the course. Going into the quarter, I was terrified since I had convinced myself I didn't like math but the material ended up being a truly refreshing blend of math, CS, and general logic and Professor Sahai's lecture style (as detailed in greater depth in other reviews) made me never want to miss a lecture. Exams were difficult but doable and I really liked the take-home nature of the final which made it a relatively stress-free experience (it made the difficult problems fun rather than scary). All in all, one of my favorite courses in the UCLA CS major. Just be ready to put in a good deal of effort.
Great professor. The class has a lot of confusing material that demands a lot of time and thought, but Prof. Sahai leads students through a kind of investigation, piecing together the foundations of automata theory one step at a time. I've had a lot of other professors try this and fail, because they're still fundamentally focused on textbook material, but Sahai will entertain every passing inquiry, sometimes coming to new proofs and conclusions not found in any of the provided texts.
In a similar vein to his lectures, assignments and exams will ask you to consider hypothetical machines and scenarios and make judgments about them. Other professors teaching this course might simply ask for the FSM diagrams of regular expressions, but his exams aim to challenge and entertain based on the approaches outlined in class. The final is take-home, so you'll have plenty of time to ponder and puzzle over the provided problems, which will range in difficulty from the trivial to the nearly incomprehensible. Mental blocks can be resolved by attending office hours (TA or professor, though be warned Sahai himself tends to shy away from a direct answer, preferring to clarify concepts he thinks you might not have understood) or collaborating with other students (for the assignments, not the final.)
Sahai might stress the difficulty of the class's grading at the beginning of the quarter, but extra credit opportunities come by the boatload if you're willing to participate, and is applied after grades (without extra credit) are curved.
He's a okay lecturer, or whatever, but he often asks for class input. The class usually just gives him blank stares, and when someone does answer his question, they are wrong 100% of the time. When he tells them that they are wrong, he says "No, that's not quite what we're looking for." And that's it. Occasionally, he'll say "Someone already said that" if you unintentionally paraphrased what someone else said, but the fact of the matter is that he provides little to no reasoning as to how we are supposed to correctly approach these problems. I, for example, came into this class with no experience with proofs and I can safely say that, having shown up to class every day, I still have no clue as to what makes a proof a proof. Is it the way I phrase it? What makes statement A any less "proofy" than statement B? He never addressed these problems in class, even though there is a large chunk of the class (75%+) that still doesn't know how to do proofs properly.
Honestly, I think the reason his rating of "Is concerned" is just because of the way he talks to students. I, however, find it condescending, especially when he outwardly laughs at what the students suggest for proofs. Altogether, I would have gladly taken the class from a clam rather than from Sahai, as at least a clam wouldn't laugh at me when I make a suggestion for a proof.
In my opinion, this class is completely worthless and a waste of time. It is a seminar where a different professor from the computer science department comes in every week to talk about a particular subject field/research interest. The lectures are pretty interesting usually, but the weekly quizzing and essay writing at the end of the quarter just make you hate the class. My essay was also given a 100 within a day after the essays were due, which makes me think that it was never even actually read. This really shouldn't be a required class and should just be advertised as a weekly seminar that you can attend if you want to hear about what professors in the department are researching.
Biggest waste of my time this past quarter. The class format is one guest speaker each week that talks about their specific subfield of computer science and on the day of discussion you are given a five question quiz on the speaker of the prior week.
Most of the speakers give very boring and confusing presentations. On two occasions we had our speakers forget to come. Four weeks in I stopped going to the speaker presentations and only went to the mandatory discussion to take the quiz. The quizzes are usually pretty easy, but sometimes they were more difficult. I found that the more difficult quizzes were just asking very specific memory questions from the presentations that were typically over 50 slides long. Most TAs will review the presentation during discussion before you take the quiz, but my TA was impossible to actually understand so that didn't help much.
Honestly, you don't really have much of a choice in taking this class as it is a requirement for any computer science student. Just know that you won't be missing much if you skip out on the presentations.
Good
What an amazing experience CS181 with Professor Sahai was. If you like mathematics, you are in for an absolute treat. Professor Sahai, in his own words, conducts the "advanced mathematical version" of CS181. Anyone who wants to take this class must be prepared to invest a considerable amount of effort. But the rewards are entirely commensurate with the effort.
Professor Sahai's lectures involve extensive interactions with students and opportunities abound for extra credit. The homeworks, midterm and exam are all very interesting, and several questions are challenging. Some of them really require meditation and contemplation over the course of several days, and are not at all the type of questions that can be solved in one sitting of a few hours. Several ideas only came to my head while I was in the shower, walking around campus, or eating dinner. These ideas require time to germinate and develop. This is how mathematics is supposed to be done.
This was by far the best CS class I ever took at UCLA. And Professor Sahai was the best professor I encountered in CS.
Let me tell you something, boys and girls. Idk why the top review is from like 2012, but Sahai in his current form is a beast of an educator. Sahai is one of the few lecturers I can recommend for anyone looking to actually make the most of their CS education. If you just want an ez A, you should avoid his class. But if you actually care about the learning computer science, look no further. Sahai ticks several very important boxes:
☑️ Supreme command of the subject matter. Sahai's class organically develops from student input. He is able to dynamically take student suggestions and run with them on the fly, while maintaining good pedagogical direction.
☑️ Interactive lectures. You feel like you really make a creative difference when you speak up in class, rather than parroting some preset answer. With the first point, this means that the overall direction of lectures is mediated by Sahai, but the examples used to demonstrate and elucidate concepts come from the floor.
☑️ Nice & enthusiastic. The top answer says Sahai can be condescending, but I haven't seen this so far. Maybe he got better at being nice. He will repeat explanations that you don't understand, and often from a different angle to make it more likely that you understand. Also, you can just feel his bubbly enthusiasm for the subject matter when he speaks.
Note that his class is the "advanced mathematical" version of 181 [sic Sahai]. If you truly feel no love for theory, or if you just need to take it easy this quarter, you should probably take it with someone else. I heard the other lecturers are also really good. But if you can handle some math and you want to go hard, I place Sahai among the legends of UCLA CS educators. You're paying fat stacks to go here. Do yourself a favor and make the most of that money and your time.
I took this class as a senior, and I can say that CS 181 with Prof. Sahai is easily the best course I've taken at UCLA. (And yes, that does include CS 32 with Carey Nauchenberg.)
Automata theory and computability probably won't be useful in my career, but I still think this is one of the most valuable classes in the CS curriculum at UCLA. This class will make you a better problem solver. A lot of the questions in this class are intuitive and easy to understand, but translating ideas into formal solutions can be so, so hard. If you've ever attempted Leetcode questions and thought "The solution seems so obvious...but I just don't know how to do it," you know this feeling. Sahai's class teaches you how to isolate intuition, address its shortcomings, and then use it to guide you toward a correct solution. Frameworks and languages will become outdated, but this process of dissecting a problem is something any software engineer can always use. If you have any interest in solving challenging problems in your career, this class is a must-take. It's the equivalent of a pro athlete going to the gym to lift weights.
- Lectures in CS 181 are unlike any lectures in the CS department. They're all student-driven, so students ask motivating questions and others can respond and drive the discussion. Extra credit is awarded for questions and answers (both right and wrong!). Trust me, I skip most of my lectures to watch them at 2-3x speed, but I looked forward to going to CS 181 every week. I've yet to take a class with a professor better at explaining difficult concepts than Sahai.
- Problem sets are difficult but highly rewarding. There's plenty of extra credit -- lots of extra credit homework problems and you get an automatic 5% (maybe 10%? I forgot) extra credit for typing your solutions in LaTeX. I would recommend looking at problems as soon as homework assignments are assigned, and then just let them sit in the back of your head for a few days. There are 6 problem sets, most of them usually 2-3 questions long, but they can be pretty hard.
- Grades are curved without extra credit, and then EC is applied. This makes the average closer to a B+/A-.
- Stick out the first two weeks! I was close to dropping the class because deterministic finite state machines are pretty boring, but it ramps up quickly.
Loved taking this class with Pf. Sahai. As other reviewers here say, this is the "advanced mathematical" offering of the course. Going into the quarter, I was terrified since I had convinced myself I didn't like math but the material ended up being a truly refreshing blend of math, CS, and general logic and Professor Sahai's lecture style (as detailed in greater depth in other reviews) made me never want to miss a lecture. Exams were difficult but doable and I really liked the take-home nature of the final which made it a relatively stress-free experience (it made the difficult problems fun rather than scary). All in all, one of my favorite courses in the UCLA CS major. Just be ready to put in a good deal of effort.
Great professor. The class has a lot of confusing material that demands a lot of time and thought, but Prof. Sahai leads students through a kind of investigation, piecing together the foundations of automata theory one step at a time. I've had a lot of other professors try this and fail, because they're still fundamentally focused on textbook material, but Sahai will entertain every passing inquiry, sometimes coming to new proofs and conclusions not found in any of the provided texts.
In a similar vein to his lectures, assignments and exams will ask you to consider hypothetical machines and scenarios and make judgments about them. Other professors teaching this course might simply ask for the FSM diagrams of regular expressions, but his exams aim to challenge and entertain based on the approaches outlined in class. The final is take-home, so you'll have plenty of time to ponder and puzzle over the provided problems, which will range in difficulty from the trivial to the nearly incomprehensible. Mental blocks can be resolved by attending office hours (TA or professor, though be warned Sahai himself tends to shy away from a direct answer, preferring to clarify concepts he thinks you might not have understood) or collaborating with other students (for the assignments, not the final.)
Sahai might stress the difficulty of the class's grading at the beginning of the quarter, but extra credit opportunities come by the boatload if you're willing to participate, and is applied after grades (without extra credit) are curved.
He's a okay lecturer, or whatever, but he often asks for class input. The class usually just gives him blank stares, and when someone does answer his question, they are wrong 100% of the time. When he tells them that they are wrong, he says "No, that's not quite what we're looking for." And that's it. Occasionally, he'll say "Someone already said that" if you unintentionally paraphrased what someone else said, but the fact of the matter is that he provides little to no reasoning as to how we are supposed to correctly approach these problems. I, for example, came into this class with no experience with proofs and I can safely say that, having shown up to class every day, I still have no clue as to what makes a proof a proof. Is it the way I phrase it? What makes statement A any less "proofy" than statement B? He never addressed these problems in class, even though there is a large chunk of the class (75%+) that still doesn't know how to do proofs properly.
Honestly, I think the reason his rating of "Is concerned" is just because of the way he talks to students. I, however, find it condescending, especially when he outwardly laughs at what the students suggest for proofs. Altogether, I would have gladly taken the class from a clam rather than from Sahai, as at least a clam wouldn't laugh at me when I make a suggestion for a proof.
In my opinion, this class is completely worthless and a waste of time. It is a seminar where a different professor from the computer science department comes in every week to talk about a particular subject field/research interest. The lectures are pretty interesting usually, but the weekly quizzing and essay writing at the end of the quarter just make you hate the class. My essay was also given a 100 within a day after the essays were due, which makes me think that it was never even actually read. This really shouldn't be a required class and should just be advertised as a weekly seminar that you can attend if you want to hear about what professors in the department are researching.
Biggest waste of my time this past quarter. The class format is one guest speaker each week that talks about their specific subfield of computer science and on the day of discussion you are given a five question quiz on the speaker of the prior week.
Most of the speakers give very boring and confusing presentations. On two occasions we had our speakers forget to come. Four weeks in I stopped going to the speaker presentations and only went to the mandatory discussion to take the quiz. The quizzes are usually pretty easy, but sometimes they were more difficult. I found that the more difficult quizzes were just asking very specific memory questions from the presentations that were typically over 50 slides long. Most TAs will review the presentation during discussion before you take the quiz, but my TA was impossible to actually understand so that didn't help much.
Honestly, you don't really have much of a choice in taking this class as it is a requirement for any computer science student. Just know that you won't be missing much if you skip out on the presentations.