- About
- Events
- Events
- Calendar
- Graduation Information
- Cornell Learning Machines Seminar
- Student Colloquium
- BOOM
- Spring 2025 Colloquium
- Conway-Walker Lecture Series
- Salton 2024 Lecture Series
- Seminars / Lectures
- Big Red Hacks
- Cornell University / Cornell Tech - High School Programming Workshop and Contest 2025
- Game Design Initiative
- CSMore: The Rising Sophomore Summer Program in Computer Science
- Explore CS Research
- ACSU Research Night
- Cornell Junior Theorists' Workshop 2024
- People
- Courses
- Research
- Undergraduate
- M Eng
- MS
- PhD
- PhD
- Admissions
- Current Students
- Computer Science Graduate Office Hours
- Advising Guide for Research Students
- Business Card Policy
- Cornell Tech
- Curricular Practical Training
- A & B Exam Scheduling Guidelines
- Fellowship Opportunities
- Field of Computer Science Ph.D. Student Handbook
- Graduate TA Handbook
- Field A Exam Summary Form
- Graduate School Forms
- Instructor / TA Application
- Ph.D. Requirements
- Ph.D. Student Financial Support
- Special Committee Selection
- Travel Funding Opportunities
- Travel Reimbursement Guide
- The Outside Minor Requirement
- Robotics Ph. D. prgram
- Diversity and Inclusion
- Graduation Information
- CS Graduate Minor
- Outreach Opportunities
- Parental Accommodation Policy
- Special Masters
- Student Spotlights
- Contact PhD Office
Title: The Loop: The interaction of creation and verification in designing complex systems
Abstract: In designing complex systems, a well-known (and somewhat inevitable) pattern is cyclic: alternating between a creative design and implementation phase, followed by a more reflective validation and verification phase, which either declares success, or identifies issues and goes back to the creative phase. The scale of this cycle in terms of time and effort varies wildly, going from years and millions of dollars to weeks in more "agile" philosophies.
The modern advent of LLMs which can reasonably design code and reason may dramatically reduce the size of this loop, by placing a completely automated solution on one or both sides of the cycle.
It is therefore interesting to examine how such loops work, and what their failure modes are. I will mostly talk about my experiences applying automated reasoning as a human component of such loops, usually on the validation side, but the lessons learned are applicable to a broader context.