CS 374 A, Fall 2025

Academic Integrity Policies

This policy statement is unfortunately necessary, thanks to the actions of a tiny minority of students. If you have any questions or concerns, please don't hesitate to ask in lecture, in lab, during office hours, on Piazza, or by email.

tl;dr: Be honest. Cite your sources. We mean it. If you need help, please ask.

Our expectations

Each student (or homework group) must write their own solutions,
in their own words, and must properly credit all sources.

These are the same ethical standards that researchers are expected to follow in their formal publications. For comparison, see the guidelines published by the Association for Computing Machinery (ACM), the American Mathematical Society (AMS), the American Physical Society (APS), the Institute of Electrical and Electronics Engineers (IEEE), and the Society for Industrial and Applied Mathematics (SIAM).

For more information and examples, see any of the following:

If you have any doubts about whether something constitutes plagiarism, talk to Jeff or one of the TAs, and err on the side of caution.

Cite Your Sources

We strongly encourage you to use any printed, online, or living resource at your disposal to help you solve homework problems, but you must cite your sources. This is not an exhaustive list!

There are only two exceptions to this rule. You are not required to cite the following:

Submitting someone else's work without giving them proper credit is plagiarism, even if you have the other person's explicit permission. Submitting someone else's work without giving them proper credit is plagiarism, even if that “someone else” is a computer program. Citing your sources will not lower your homework grade.

Allowing someone else to use your ideas without giving you credit is also an academic integrity violation.

Use Your Own Words

Verbatim duplication of any source, even with proper citation, is plagiarism. In particular:

Classes in some other departments allow and even encourage verbatim copying in small doses. For example, if you want to claim that an expert holds an important or controversial opinion, it is usually better (more honest, more accurate) to quote them verbatim, instead of rewriting their opinion in your words.

Immortality. I notice that as soon as writers broach this question they begin to quote. I hate quotation. Tell me what you know.
— Ralph Waldo Emerson, Journals (May 1849)

Students frequently overuse direct quotation in taking notes, and as a result they overuse quotations in the final paper. Probably only about 10% of your final manuscript should appear as directly quoted matter. Therefore, you should strive to limit the amount of exact transcribing of source materials while taking notes.
— James D. Lester, Writing Research Papers (1976)

But computer science classes are different. We won't ask you to defend a hypothesis or opinion using evidence or rhetoric. What we will ask for are formal, logical, mathematical arguments. Expert opinion is irrelevant here; the math must speak for itself. In particular, we are asking you to demonstrate your expertise in formal, logical, mathematical reasoning and communication. You can only demonstrate expertise in something by actually doing it. (The same argument goes for programming classes. Your MPs are not just asking you for working code; they are asking you for evidence of your ability to independently produce working code.)

That said, if you want to use an algorithm from the textbook, lecture notes, lectures, labs, or previous homeworks in your solution, just use it and carefully describe any necessary changes.

Don't Be Stupid

There are several more egregious ways to violate the university's academic integrity policies, such as collaborating with or copying from another student during an exam, using your phone or AR glasses to consult an AI chatbot during an exam, hiring an impostor to submit homework or take exams for you, falsely claiming to have submitted a homework or taken an exam, and modifying or destroying other students' graded work. But you already know not to do anything that stupid!

Penalties

These penalties are consistent with the Siebel School's recommendations.

In accordance with department, college, and university policy, we report all academic integrity cases to the Computer Science department, to the student's college, and to the Senate Committee on Student Discipline through the FAIR (Faculty Academic Integrity Report) system. Multiple offenses, even in different classes, can result in suspension or expulsion.

Remember that your goal is to learn to solve problems, not to collect points. The only way to learn to do the thing is to actually do the thing; watching someone else do the thing isn't enough.

If you really need points for motivation, remember that points on the exams are worth significantly more than points on the homework. Regardless of whether it constitutes plagiarism, or whether you get caught, getting too much help on your homework will hurt your final grade. If you don't learn how to solve algorithmic problems on your own, you will perform poorly on the exams, which make up at least 65% of your final course grade. Several students with homework averages over 90% have failed this course.


Generative AI

You are welcome to use generative-AI chatbots to help solve homework problems, but you must include a complete transcript of your conversation, including all prompts and responses, as an appendix to your homework submission. And just like any other source, you must explcitily cite the chatbot/model you use, and you must write your solution in your own words.

Given all the recent hype around generative AI and large language models (ChatGPT, Gemini, Claude, Copilot, DeepSeek, etc.) many students may be tempted to use them to “help” with homework. As policy, we are treating generative AI tools just like every other source; you are welcome to use them, provided you cite them and write your answers yourself in your own words. But we also want to caution you about relying on them, or any other source, too much.

It is helpful to remember that chatbots built around large languge models are designed for two purposes:

Some AI models have become scarily good at solving the kinds of problems that you'll see in this class, except when they confidently spout superficially plausible bullshit. Evidence from other upper-divison CS classes suggests that using AI to clarify conceptual misunderstandings or perform precise low-level tasks improves course performace, and feeding assignment prompts directly to LLMs degrades course performance. And it's clear that asking anyone—either meat or wireborn—to do your homework for you is completely useless for anything but collecting homework points. But beyond that, we can't actually recommend good practices for using AI to help you develop the skills we're trying to teach in CS 374, because we honestly don't yet know what those good practices are!

Students everywhere are also increasingly using LLMs instead of attending lectures, reading notes and textbooks, actively participating in discussion sections, asking questions in office hours or online, Answering questions from other students, or studying in groups. There is published evidence that this increased use of LLm as a substitute for human interaction has a negative impact on students' mental health.

So we're asking for transcripts of your LLM conversations partly to create friction against their overuse, partly in the interest of transparency and scholastic integrity, and partly to learn from you what practices with AI are actually helpful.


Group work

Groups of up to three people are allowed to submit a single solution for each homework. Every member of the group receives the same grade and the same credit for the entire assignment. That means every member of the group is responsible for the entire assignment.

Group solutions must represent an honest collaborative effort by all members of the group.
At a minimum, you must read, understand, and approve anything submitted with your name on it.
Letting someone else add your name to a solution to which you made no contribution is plagiarism.

In particular, groups must not delegate one problem to each group member; only the students who actively worked on a problem may add their names to the solution. This does not mean that every student in a group must contribute good ideas or must help in the actual writing of every group solution. Asking "stupid" questions, proposing bad ideas, shooting down bad ideas, working out examples (even if they don't appear in the solution), uncovering bugs, and even just acting as a sounding board for other group members are all legitimate contributions.

If a submitted homework contains plagiarized material, we will separately determine each student's culpability (if any) and penalty (if any), in accordance with Student Code. By default, every member of the homework group will be given the same penalty. (Again, this is the same standard that is applied to coauthors of research papers.) If you cheat, you are not only endangering your grade, and possibly your academic career, but your colleagues’ as well.


Examples

As illustrations, consider the following scenarios involving a group of three students (A, B, and C) collaborating on a three-problem homework set. In every scenario, the group agrees in advance that each student will write up and submit the solution for one problem — A will handle problem 1, B will handle problem 2, and C will handle problem 3 — with all three names at the top of each solution. Variants of all these scenarios have actually happened. Yes, even the last two.


Warning signs

Almost every instance of plagiarism I have seen was motivated by a combination of two factors.