Indeed, Brian, there is a difference between a provably-correct code block, and actual execution of the code, in other than a dedicated run-time, without interrupts, or real-time OS, or … interesting point about the core, whether it has been proven to execute correctly, in every possible case ;-) That's a couple of test vectors, no?
Barry On 04/08/2016, at 21:23 , Brian O'Connell <[email protected]> wrote: > Whom considers Ada (the language name is not an acronym) provably correct? > How do you prove the program is deterministic? What if a Verification > Condition is not proven? Is the code incorrect? Is the assertion not correct > or incomplete? Does P = NP ? SPARK 2014 did attempt to address some of this > stuff, BTW. > > Do not think that we will find answers to these questions in ISO8652. What > Ada does provide is a formalized programming method for concurrency + design > by contract, which offer a little more hope for code safety and test coverage. > > The weakness for all human code solutions is a provable processor core where > the assumption is a provable algorithm. If a static evaluation indicates a > deterministic algorithm, and if a contract violation occurs at runtime, what > is 'wrong'? The language? The Compiler? The design assumptions? The processor > core? Once you get past Ada (or any other language) compile-time protection, > you return to the electronic jungle where you are part of the food chain. > > Brian > > > From: B Rowland [mailto:[email protected]] > Sent: Thursday, August 04, 2016 11:33 AM > To: [email protected] > Subject: Re: [PSES] SAFETTY FEATURES controlled by ....SOFTWARE > > Hi List-colleagues; > > I think, if the safety-related functions are life-critical, they need to be > written in a "provably-correct" language/environment, like ADA, or some > equivalent. And, of course, that also means that such functionality needs to > be isolated from software that is NOT provably-correct (is Windows > "provably-correct" ?). > > In any case, life-critical systems need to be, at least, redundant, with > fail-safe shutdown if the processes do not agree at timed checkpoints, and > also have hardware-based watchdog timers (sometimes built-in to the > microcontroller, itself) to guarantee continued function. Furthermore, it is > also typical that the software that runs on the redundant processors is > written by different teams, so that an error in a program on one "side" is > not duplicated in the other half/third of the redundant CPUs. > > Since, as some have pointed out, it is readily-accomplished to have a > provably-correct hardware implementation of the safety functions that are "at > the edge" of the system, FPGA's, PALs, etc., with ROM, or > check-summed-on-load-firmware, are much more reliable.. > > In another discussion that I had, a while back, we even discussed how to > ensure that the semiconductor devices, at the safety interface, are made > reliable-enough to allow proper operation, even in the typical fail-short > conditions. I think that this is why we have relays costing > $1000 used in > train/subway applications ;-) > > Cheers, > Barry Rowland > Muenchen, Bayern > > - > ---------------------------------------------------------------- > This message is from the IEEE Product Safety Engineering Society emc-pstc > discussion list. To post a message to the list, send your e-mail to > <[email protected]> > > All emc-pstc postings are archived and searchable on the web at: > http://www.ieee-pses.org/emc-pstc.html > > Attachments are not permitted but the IEEE PSES Online Communities site at > http://product-compliance.oc.ieee.org/ can be used for graphics (in well-used > formats), large files, etc. > > Website: http://www.ieee-pses.org/ > Instructions: http://www.ieee-pses.org/list.html (including how to > unsubscribe) > List rules: http://www.ieee-pses.org/listrules.html > > For help, send mail to the list administrators: > Scott Douglas <[email protected]> > Mike Cantwell <[email protected]> > > For policy questions, send mail to: > Jim Bacher: <[email protected]> > David Heald: <[email protected]> - ---------------------------------------------------------------- This message is from the IEEE Product Safety Engineering Society emc-pstc discussion list. To post a message to the list, send your e-mail to <[email protected]> All emc-pstc postings are archived and searchable on the web at: http://www.ieee-pses.org/emc-pstc.html Attachments are not permitted but the IEEE PSES Online Communities site at http://product-compliance.oc.ieee.org/ can be used for graphics (in well-used formats), large files, etc. Website: http://www.ieee-pses.org/ Instructions: http://www.ieee-pses.org/list.html (including how to unsubscribe) List rules: http://www.ieee-pses.org/listrules.html For help, send mail to the list administrators: Scott Douglas <[email protected]> Mike Cantwell <[email protected]> For policy questions, send mail to: Jim Bacher: <[email protected]> David Heald: <[email protected]>

