Symbolic compilation and execution of programs by proof, a case study in HOL:
Abstract: "This paper illustrates the symbolic 'compilation' and 'execution' of programs by proof using the proof assistant HOL. We formalise the operational semantics of an occam-like programming language OC and show how synchronous communication in OC compiles to an interm...
Gespeichert in:
1. Verfasser: | |
---|---|
Format: | Buch |
Sprache: | English |
Veröffentlicht: |
Cambridge
1991
|
Schriftenreihe: | Computer Laboratory <Cambridge>: Technical report
240 |
Schlagworte: | |
Zusammenfassung: | Abstract: "This paper illustrates the symbolic 'compilation' and 'execution' of programs by proof using the proof assistant HOL. We formalise the operational semantics of an occam-like programming language OC and show how synchronous communication in OC compiles to an intermediate programming language SAFE whose compilation yields instructions intended to drive machines that communicate via shared memory. We show how the symbolic formal manipulation of terms of a programming language, subject to the definition of its semantics, can animate a desired effect -- be it compilation or execution. Needless to say, such compilation and execution by proof is rather slow, but it is fast enough to give vital feedback about the compilation algorithm being used Without such animation it is hard to anticipate whether the compilation algorithm is reasonable before attempting to verify it. This is particularly true when attempting to find a plausible handshaking protocol that implements synchronous communication. |
Beschreibung: | 31 S. |
Internformat
MARC
LEADER | 00000nam a2200000 cb4500 | ||
---|---|---|---|
001 | BV010411526 | ||
003 | DE-604 | ||
005 | 19960925 | ||
007 | t | ||
008 | 951006s1991 |||| 00||| engod | ||
035 | |a (OCoLC)26612650 | ||
035 | |a (DE-599)BVBBV010411526 | ||
040 | |a DE-604 |b ger |e rakddb | ||
041 | 0 | |a eng | |
049 | |a DE-19 | ||
084 | |a DAT 706f |2 stub | ||
084 | |a DAT 540f |2 stub | ||
084 | |a DAT 383f |2 stub | ||
100 | 1 | |a Camilleri, Juanito |e Verfasser |4 aut | |
245 | 1 | 0 | |a Symbolic compilation and execution of programs by proof, a case study in HOL |
264 | 1 | |a Cambridge |c 1991 | |
300 | |a 31 S. | ||
336 | |b txt |2 rdacontent | ||
337 | |b n |2 rdamedia | ||
338 | |b nc |2 rdacarrier | ||
490 | 1 | |a Computer Laboratory <Cambridge>: Technical report |v 240 | |
520 | 3 | |a Abstract: "This paper illustrates the symbolic 'compilation' and 'execution' of programs by proof using the proof assistant HOL. We formalise the operational semantics of an occam-like programming language OC and show how synchronous communication in OC compiles to an intermediate programming language SAFE whose compilation yields instructions intended to drive machines that communicate via shared memory. We show how the symbolic formal manipulation of terms of a programming language, subject to the definition of its semantics, can animate a desired effect -- be it compilation or execution. Needless to say, such compilation and execution by proof is rather slow, but it is fast enough to give vital feedback about the compilation algorithm being used | |
520 | 3 | |a Without such animation it is hard to anticipate whether the compilation algorithm is reasonable before attempting to verify it. This is particularly true when attempting to find a plausible handshaking protocol that implements synchronous communication. | |
650 | 7 | |a Computer software |2 sigle | |
650 | 4 | |a Compilers (Computer programs) | |
650 | 4 | |a Logic programming | |
830 | 0 | |a Computer Laboratory <Cambridge>: Technical report |v 240 |w (DE-604)BV004055605 |9 240 | |
999 | |a oai:aleph.bib-bvb.de:BVB01-006933466 |
Datensatz im Suchindex
_version_ | 1804124839872561152 |
---|---|
any_adam_object | |
author | Camilleri, Juanito |
author_facet | Camilleri, Juanito |
author_role | aut |
author_sort | Camilleri, Juanito |
author_variant | j c jc |
building | Verbundindex |
bvnumber | BV010411526 |
classification_tum | DAT 706f DAT 540f DAT 383f |
ctrlnum | (OCoLC)26612650 (DE-599)BVBBV010411526 |
discipline | Informatik |
format | Book |
fullrecord | <?xml version="1.0" encoding="UTF-8"?><collection xmlns="http://www.loc.gov/MARC21/slim"><record><leader>02083nam a2200361 cb4500</leader><controlfield tag="001">BV010411526</controlfield><controlfield tag="003">DE-604</controlfield><controlfield tag="005">19960925 </controlfield><controlfield tag="007">t</controlfield><controlfield tag="008">951006s1991 |||| 00||| engod</controlfield><datafield tag="035" ind1=" " ind2=" "><subfield code="a">(OCoLC)26612650</subfield></datafield><datafield tag="035" ind1=" " ind2=" "><subfield code="a">(DE-599)BVBBV010411526</subfield></datafield><datafield tag="040" ind1=" " ind2=" "><subfield code="a">DE-604</subfield><subfield code="b">ger</subfield><subfield code="e">rakddb</subfield></datafield><datafield tag="041" ind1="0" ind2=" "><subfield code="a">eng</subfield></datafield><datafield tag="049" ind1=" " ind2=" "><subfield code="a">DE-19</subfield></datafield><datafield tag="084" ind1=" " ind2=" "><subfield code="a">DAT 706f</subfield><subfield code="2">stub</subfield></datafield><datafield tag="084" ind1=" " ind2=" "><subfield code="a">DAT 540f</subfield><subfield code="2">stub</subfield></datafield><datafield tag="084" ind1=" " ind2=" "><subfield code="a">DAT 383f</subfield><subfield code="2">stub</subfield></datafield><datafield tag="100" ind1="1" ind2=" "><subfield code="a">Camilleri, Juanito</subfield><subfield code="e">Verfasser</subfield><subfield code="4">aut</subfield></datafield><datafield tag="245" ind1="1" ind2="0"><subfield code="a">Symbolic compilation and execution of programs by proof, a case study in HOL</subfield></datafield><datafield tag="264" ind1=" " ind2="1"><subfield code="a">Cambridge</subfield><subfield code="c">1991</subfield></datafield><datafield tag="300" ind1=" " ind2=" "><subfield code="a">31 S.</subfield></datafield><datafield tag="336" ind1=" " ind2=" "><subfield code="b">txt</subfield><subfield code="2">rdacontent</subfield></datafield><datafield tag="337" ind1=" " ind2=" "><subfield code="b">n</subfield><subfield code="2">rdamedia</subfield></datafield><datafield tag="338" ind1=" " ind2=" "><subfield code="b">nc</subfield><subfield code="2">rdacarrier</subfield></datafield><datafield tag="490" ind1="1" ind2=" "><subfield code="a">Computer Laboratory <Cambridge>: Technical report</subfield><subfield code="v">240</subfield></datafield><datafield tag="520" ind1="3" ind2=" "><subfield code="a">Abstract: "This paper illustrates the symbolic 'compilation' and 'execution' of programs by proof using the proof assistant HOL. We formalise the operational semantics of an occam-like programming language OC and show how synchronous communication in OC compiles to an intermediate programming language SAFE whose compilation yields instructions intended to drive machines that communicate via shared memory. We show how the symbolic formal manipulation of terms of a programming language, subject to the definition of its semantics, can animate a desired effect -- be it compilation or execution. Needless to say, such compilation and execution by proof is rather slow, but it is fast enough to give vital feedback about the compilation algorithm being used</subfield></datafield><datafield tag="520" ind1="3" ind2=" "><subfield code="a">Without such animation it is hard to anticipate whether the compilation algorithm is reasonable before attempting to verify it. This is particularly true when attempting to find a plausible handshaking protocol that implements synchronous communication.</subfield></datafield><datafield tag="650" ind1=" " ind2="7"><subfield code="a">Computer software</subfield><subfield code="2">sigle</subfield></datafield><datafield tag="650" ind1=" " ind2="4"><subfield code="a">Compilers (Computer programs)</subfield></datafield><datafield tag="650" ind1=" " ind2="4"><subfield code="a">Logic programming</subfield></datafield><datafield tag="830" ind1=" " ind2="0"><subfield code="a">Computer Laboratory <Cambridge>: Technical report</subfield><subfield code="v">240</subfield><subfield code="w">(DE-604)BV004055605</subfield><subfield code="9">240</subfield></datafield><datafield tag="999" ind1=" " ind2=" "><subfield code="a">oai:aleph.bib-bvb.de:BVB01-006933466</subfield></datafield></record></collection> |
id | DE-604.BV010411526 |
illustrated | Not Illustrated |
indexdate | 2024-07-09T17:52:03Z |
institution | BVB |
language | English |
oai_aleph_id | oai:aleph.bib-bvb.de:BVB01-006933466 |
oclc_num | 26612650 |
open_access_boolean | |
owner | DE-19 DE-BY-UBM |
owner_facet | DE-19 DE-BY-UBM |
physical | 31 S. |
publishDate | 1991 |
publishDateSearch | 1991 |
publishDateSort | 1991 |
record_format | marc |
series | Computer Laboratory <Cambridge>: Technical report |
series2 | Computer Laboratory <Cambridge>: Technical report |
spelling | Camilleri, Juanito Verfasser aut Symbolic compilation and execution of programs by proof, a case study in HOL Cambridge 1991 31 S. txt rdacontent n rdamedia nc rdacarrier Computer Laboratory <Cambridge>: Technical report 240 Abstract: "This paper illustrates the symbolic 'compilation' and 'execution' of programs by proof using the proof assistant HOL. We formalise the operational semantics of an occam-like programming language OC and show how synchronous communication in OC compiles to an intermediate programming language SAFE whose compilation yields instructions intended to drive machines that communicate via shared memory. We show how the symbolic formal manipulation of terms of a programming language, subject to the definition of its semantics, can animate a desired effect -- be it compilation or execution. Needless to say, such compilation and execution by proof is rather slow, but it is fast enough to give vital feedback about the compilation algorithm being used Without such animation it is hard to anticipate whether the compilation algorithm is reasonable before attempting to verify it. This is particularly true when attempting to find a plausible handshaking protocol that implements synchronous communication. Computer software sigle Compilers (Computer programs) Logic programming Computer Laboratory <Cambridge>: Technical report 240 (DE-604)BV004055605 240 |
spellingShingle | Camilleri, Juanito Symbolic compilation and execution of programs by proof, a case study in HOL Computer Laboratory <Cambridge>: Technical report Computer software sigle Compilers (Computer programs) Logic programming |
title | Symbolic compilation and execution of programs by proof, a case study in HOL |
title_auth | Symbolic compilation and execution of programs by proof, a case study in HOL |
title_exact_search | Symbolic compilation and execution of programs by proof, a case study in HOL |
title_full | Symbolic compilation and execution of programs by proof, a case study in HOL |
title_fullStr | Symbolic compilation and execution of programs by proof, a case study in HOL |
title_full_unstemmed | Symbolic compilation and execution of programs by proof, a case study in HOL |
title_short | Symbolic compilation and execution of programs by proof, a case study in HOL |
title_sort | symbolic compilation and execution of programs by proof a case study in hol |
topic | Computer software sigle Compilers (Computer programs) Logic programming |
topic_facet | Computer software Compilers (Computer programs) Logic programming |
volume_link | (DE-604)BV004055605 |
work_keys_str_mv | AT camillerijuanito symboliccompilationandexecutionofprogramsbyproofacasestudyinhol |