coq-club AT inria.fr
Subject: The Coq mailing list
List archive
- From: Talia Ringer <tringer AT cs.washington.edu>
- To: coq-club AT inria.fr
- Subject: Re: [Coq-Club] A verified bootstrapping computer (academic curiousity)
- Date: Sat, 8 Jan 2022 13:20:44 -0600
- Authentication-results: mail3-smtp-sop.national.inria.fr; spf=None smtp.pra=tringer AT cs.washington.edu; spf=Pass smtp.mailfrom=tringer AT cs.washington.edu; spf=None smtp.helo=postmaster AT mx6.cs.washington.edu
- Ironport-data: A9a23:hj8OB625r+RK4ZraL/bD5Wtzkn2cJEfYwER7XOPLsXnJ1WglhTcBzGNNCmiEP6uDZTPwKd5+aYzj9EgDvZLXnNESHQtv/xmBbVoa8JufXYzxwmTYZn7JcJWbFCqL1yivAzX5BJhcokT0+1H9YtANkVEmjfvSHuOkWLaeUsxMbVYMpBkJ2UoLd9ER2dYAbeiRW2thiPuqyyHtEAfNNw1cbgr435m+RCZH55wejt+3UmsWPpintHeG/5Uc4Ql2yauZdxMUSaEMdgK2qnqq8V23wo/Z109F5tKNl6alNEYRBKHbJgiPjHVKXK7kjxRfzsAw+v9hZLxGMRcR12rPwokZJNZl7fRcTS81JKzKl+kHexJDVT53Jq1H/rDbJn75vMCOp6HDWyG0mK8yUh9e0Yowp78pUT8VnRACExgGaQnGjOarypqgW+x0j4IiKtPqNcURoBldIZvxZRo9aZXTHePB/plH1Swwh8ZBAfHYIccVdFJSgN37S0UnEj8q5FgWxY9ER0UTcgG0bHqQtfRx6HOV0wVq0LnrP8bSfJqHSdg9coOwzo7Z1zyRP/3YHIX3Jfm5HraEjfSJgirgWIMUG6G/8LhnjED7Kqk7FkgNTVXiyRWmohfWZj+cQnD4PgIltu4t/VerT9/yQxq+5nOIo3bwnvI4//ISsGmw90Yf3+pV6qXogNKMhBzKefLanQAX62I=
- Ironport-hdrordr: A9a23:rqGyCK81epGjYFpWQuduk+DbI+orL9Y04lQ7vn2ZLiYlFfBw9vre+MjzuiWbtN98YhsdcKm7WZVoGEm9yXcW2/hyAV7KZmCPhILPFu5fBKTZrwEIcBeUygcy78pdm78XMqySMbCl5vyKhTWFLw==
- Ironport-phdr: A9a23:ZG7mCBc3WeeIf9PqjTAVsipXlGM+TN7LVj580XLHo4xHfqnrxZn+JkuXvawr0AWQG9yHtrkV1KL/iOPJYSQ4+5GPsXQPItRndiQuroEopTEmG9OPEkbhLfTnPGQQFcVGU0J5rTngaRAGUMnxaEfPrXKs8DUcBgvwNRZvJuTyB4Xek9m72/q99pHNfglEniexbLxyIRm5qQjctNQdjJd/JKo21hbHuGZDdf5MxWNvK1KTnhL86dm18ZV+7SleuO8v+tBZX6nicKs2UbJXDDI9M2Ao/8LrrgXMTRGO5nQHTGoblAdDDhXf4xH7WpfxtTb6tvZ41SKHM8D6Uaw4VDK/5KptVRTmijoINyQh/W7YhMx/jqJVrhyiqRJi3YDbfJqYO+Bicq7HZ94WWXZNU8RXWidcAo28dYwPD+8ZMOhGtYb9o1oOogGjDgewBePvzDBIiWHs3aYn1OkhDRvG3A0mH9IBrnvUts74O7sJUeyvwqjH1y7Db/NX2Tf754jIbhchofeWUb1ubMXR1FAiGgXYhVqftYLrJSma1vgRs2eF9epgU/qihmwnpg1toTWi2skhh4bGi48R1F3J8Th0zok7KNC6VEN3fNypHIZMuyyZKoZ6X8wvTm92tCs+yLALt522cSYFxpkh2hXRaOSHfpCV7h79V+udOyl0iG5mdb6liBu/81Ksx+3hWsWszlpGsi5InsPPu30NzRDf98mKR/pn8ku82zuC2Qbe4fxeL08uj6rUMZshz6YwlpUNtUTDGTf7mED5jaKXbEkr5vOo5/7pY7r8vZ+cN450igfxMqQyncy/B/40PRYTUGiG4ei81bvj8lPlQLhSk/E6jKrUvIrEKcgHpaO1GQBY34Q55xu/EjuqyNEYkmMGLFJBdhKHlY/pO1TWLfDkF/e/glKskDh1yPDcJbDuHo7NImLNkbj7ZrZ9609cyAw8zdBD4JJUDKsNL+zuVU/srNDYFAM2MxSow+b7D9Vwzp8RWWWWAqOALKzStUKI6fk0LumXZI4VvS79JOI/6/7vi385g14dcrOz0ZsZcnDrVshhdk6eeD/nhsoLOWYMpAs3CuLw23OYVjsGW3+2Xqt03DA9B4+8RdPfXIGrj7Gb9CygWIJffWBHDF+QFnGueomZDaRfIBmOK9Nsx2RXHYOqTJUsgEnGXOrSwKEhMePP+iweuo7k0p546/CBzXnaGhR/FIKC2nqNTmd7gmQOATI6wfImyaSc4lKTj+5zmLpHHMdT5vVGTgA8c5PQ0r4iY+0=
Thanks for drawing attention to a worthy goal, which I think at least a few different research groups already have in mind, at least philosophically.
For such an effort, setting the goals properly can have a big effect on where it winds up. I'm not sure it makes sense to ask to "minimize the TCB as much as possible at each step." Rather, I'd expect that earlier stages are discarded as they are used to produce later stages, and the final stage can be used independently for self-validation. So, shrinking the TCB in an earlier stage isn't necessarily a good deal, if it delays the completion of later stages.
There are plenty of high-impact proof-assistant developments that never could have been completed so soon if e.g. the original Coq team had decided to wait 20 additional years for the first release, to shrink the TCB as much as they could think up in brainstorming a project roadmap!
Also, I don't think this question has zero practical motivation. I would hope that, 50 years from now, everyone takes for granted the existence of a repeatable process like you describe, leading to the systems they depend on. And, even sooner, we should be able to run undergraduate courses that follow such processes toward more modest endpoints.
On 1/8/22 1:41 PM, Talia Ringer wrote:
Something that nerd-sniped me today: Suppose you are building a computer from the ground up, starting with building the hardware. You cannot use any other computers to build or verify anything; this is the only computer in the world, and you have only what you've built at each step. You have no languages, no operating systems, no compilers, no verification tools. All you can do is bootstrap.
Suppose you'd like to verify every single part of the hardware and software stack to the degree possible. It's OK (inevitable I guess) to start with unverified hardware, though, and replace it later with hardware you verify (has anyone done that? It sounds cool). You have two additional goals:
1) verify as much as possible at each each, and2) minimize the TCB as much as possible at each step.
How would you go about this? What are the biggest conceptual barriers to this, if any? What is the smallest you can get the TCB at any step of the process, and in the end?
This is a purely academic and open-ended question, with zero practical motivation. It just sounds fun to think about and try, and like thinking about it might reveal interesting subproblems that actually have practical motivation.
Talia
- [Coq-Club] A verified bootstrapping computer (academic curiousity), Talia Ringer, 01/08/2022
- Re: [Coq-Club] A verified bootstrapping computer (academic curiousity), Adam Chlipala, 01/08/2022
- Re: [Coq-Club] A verified bootstrapping computer (academic curiousity), Talia Ringer, 01/08/2022
- Re: [Coq-Club] A verified bootstrapping computer (academic curiousity), Andrei Popescu, 01/08/2022
- Re: [Coq-Club] A verified bootstrapping computer (academic curiousity), Marco Servetto, 01/08/2022
- Re: [Coq-Club] A verified bootstrapping computer (academic curiousity), Talia Ringer, 01/08/2022
- Re: [Coq-Club] A verified bootstrapping computer (academic curiousity), Sam Kuper, 01/09/2022
- Re: [Coq-Club] A verified bootstrapping computer (academic curiousity), Freek Wiedijk, 01/10/2022
- Re: [Coq-Club] A verified bootstrapping computer (academic curiousity), Robert Solovay, 01/11/2022
- Re: [Coq-Club] A verified bootstrapping computer (academic curiousity), Jeremy Dawson, 01/11/2022
- Re: [Coq-Club] A verified bootstrapping computer (academic curiousity), Sam Kuper, 01/11/2022
- Re: [Coq-Club] A verified bootstrapping computer (academic curiousity), Freek Wiedijk, 01/11/2022
- Re: [Coq-Club] A verified bootstrapping computer (academic curiousity), Timothy Carstens, 01/11/2022
- Re: [Coq-Club] A verified bootstrapping computer (academic curiousity), D. Ben Knoble, 01/11/2022
- Re: [Coq-Club] A verified bootstrapping computer (academic curiousity), Timothy Carstens, 01/11/2022
- Re: [Coq-Club] A verified bootstrapping computer (academic curiousity), Freek Wiedijk, 01/11/2022
- Re: [Coq-Club] A verified bootstrapping computer (academic curiousity), Sam Kuper, 01/11/2022
- Re: [Coq-Club] A verified bootstrapping computer (academic curiousity), Jeremy Dawson, 01/11/2022
- Re: [Coq-Club] A verified bootstrapping computer (academic curiousity), Robert Solovay, 01/11/2022
- Re: [Coq-Club] A verified bootstrapping computer (academic curiousity), Adam Chlipala, 01/08/2022
Archive powered by MHonArc 2.6.19+.