On the specification and verification of the PCR parallel programming pattern in TLA+

Solsona, José E.

Supervisor(es): Tasistro, Alvaro - Yovine, Sergio

Resumen:

Physical limitations in processor design have made computer industry since 2005 shift from improving the speed of a single processor to increasing the number of processing core units. But the design of software to exploit parallel processing power in a correct and cost-effective way is a challenging task requiring a high degree of expertise. In 2017, Pérez and Yovine proposed a pattern-based formally grounded tool that eases writing parallel code. In particular, the tool is based on a platform-agnostic parallel programming pattern called PCR, which describes computations performed concurrently by communicating Producers, Consumers and Reducers. It combines in a single and composable pattern several concepts like collective operations, stream programming, unbounded iteration and recursion. In this thesis, we formalize the semantics of the PCR pattern in terms of TLA+. In this way, we can leverage TLA$+ related tools to prove properties about high level PCR designs such as their functional correctness and refinements between different PCR designs. TLA+ is a formal specification language for concurrent systems that is being used at places such as Intel, Amazon and Microsoft. We thus contribute to the state of the art in formal refinement of parallel programs from abstract models, especially starting from an alternative characterization of the general PCR pattern, and utilizing the TLA+ framework. A presentation of the work in progress for this thesis was part of the TLA+ Community Event that was held (virtually) in October 2020 as a satellite of the DISC 2020 Conference.


Detalles Bibliográficos
2021
Agencia Nacional de Investigación e Innovación
Algoritmos paralelos
Patrones de diseño
Métodos formales
Ciencias Naturales y Exactas
Ciencias de la Computación e Información
Inglés
Agencia Nacional de Investigación e Innovación
REDI
https://hdl.handle.net/20.500.12381/489
Acceso abierto
Reconocimiento 4.0 Internacional. (CC BY)
_version_ 1814959261638197248
author Solsona, José E.
author_facet Solsona, José E.
author_role author
bitstream.checksum.fl_str_mv 2d97768b1a25a7df5a347bb58fd2d77f
3bc0cc52137251713c15bec452d8699b
bitstream.checksumAlgorithm.fl_str_mv MD5
MD5
bitstream.url.fl_str_mv https://redi.anii.org.uy/jspui/bitstream/20.500.12381/489/2/license.txt
https://redi.anii.org.uy/jspui/bitstream/20.500.12381/489/1/2021118-MI-182285.pdf
collection REDI
dc.creator.advisor.none.fl_str_mv Tasistro, Alvaro
Yovine, Sergio
dc.creator.none.fl_str_mv Solsona, José E.
dc.date.accessioned.none.fl_str_mv 2021-12-08T18:50:31Z
dc.date.available.none.fl_str_mv 2021-12-08T18:50:31Z
dc.date.issued.none.fl_str_mv 2021-10
dc.description.abstract.none.fl_txt_mv Physical limitations in processor design have made computer industry since 2005 shift from improving the speed of a single processor to increasing the number of processing core units. But the design of software to exploit parallel processing power in a correct and cost-effective way is a challenging task requiring a high degree of expertise. In 2017, Pérez and Yovine proposed a pattern-based formally grounded tool that eases writing parallel code. In particular, the tool is based on a platform-agnostic parallel programming pattern called PCR, which describes computations performed concurrently by communicating Producers, Consumers and Reducers. It combines in a single and composable pattern several concepts like collective operations, stream programming, unbounded iteration and recursion. In this thesis, we formalize the semantics of the PCR pattern in terms of TLA+. In this way, we can leverage TLA$+ related tools to prove properties about high level PCR designs such as their functional correctness and refinements between different PCR designs. TLA+ is a formal specification language for concurrent systems that is being used at places such as Intel, Amazon and Microsoft. We thus contribute to the state of the art in formal refinement of parallel programs from abstract models, especially starting from an alternative characterization of the general PCR pattern, and utilizing the TLA+ framework. A presentation of the work in progress for this thesis was part of the TLA+ Community Event that was held (virtually) in October 2020 as a satellite of the DISC 2020 Conference.
dc.description.sponsorship.none.fl_txt_mv Agencia Nacional de Investigación e Innovación
dc.identifier.anii.es.fl_str_mv POS_NAC_2018_1_152201
dc.identifier.uri.none.fl_str_mv https://hdl.handle.net/20.500.12381/489
dc.language.iso.none.fl_str_mv eng
dc.publisher.es.fl_str_mv Universidad ORT Uruguay
dc.relation.none.fl_str_mv https://hdl.handle.net/20.500.12381/488
dc.rights.es.fl_str_mv Acceso abierto
dc.rights.license.none.fl_str_mv Reconocimiento 4.0 Internacional. (CC BY)
dc.rights.none.fl_str_mv info:eu-repo/semantics/openAccess
dc.source.none.fl_str_mv reponame:REDI
instname:Agencia Nacional de Investigación e Innovación
instacron:Agencia Nacional de Investigación e Innovación
dc.subject.anii.none.fl_str_mv Ciencias Naturales y Exactas
Ciencias de la Computación e Información
dc.subject.es.fl_str_mv Algoritmos paralelos
Patrones de diseño
Métodos formales
dc.title.none.fl_str_mv On the specification and verification of the PCR parallel programming pattern in TLA+
dc.type.es.fl_str_mv Tesis de maestría
dc.type.none.fl_str_mv info:eu-repo/semantics/masterThesis
dc.type.version.es.fl_str_mv Publicado
dc.type.version.none.fl_str_mv info:eu-repo/semantics/publishedVersion
description Physical limitations in processor design have made computer industry since 2005 shift from improving the speed of a single processor to increasing the number of processing core units. But the design of software to exploit parallel processing power in a correct and cost-effective way is a challenging task requiring a high degree of expertise. In 2017, Pérez and Yovine proposed a pattern-based formally grounded tool that eases writing parallel code. In particular, the tool is based on a platform-agnostic parallel programming pattern called PCR, which describes computations performed concurrently by communicating Producers, Consumers and Reducers. It combines in a single and composable pattern several concepts like collective operations, stream programming, unbounded iteration and recursion. In this thesis, we formalize the semantics of the PCR pattern in terms of TLA+. In this way, we can leverage TLA$+ related tools to prove properties about high level PCR designs such as their functional correctness and refinements between different PCR designs. TLA+ is a formal specification language for concurrent systems that is being used at places such as Intel, Amazon and Microsoft. We thus contribute to the state of the art in formal refinement of parallel programs from abstract models, especially starting from an alternative characterization of the general PCR pattern, and utilizing the TLA+ framework. A presentation of the work in progress for this thesis was part of the TLA+ Community Event that was held (virtually) in October 2020 as a satellite of the DISC 2020 Conference.
eu_rights_str_mv openAccess
format masterThesis
id REDI_311c4d9ed6c263b89aa0c5b163642571
identifier_str_mv POS_NAC_2018_1_152201
instacron_str Agencia Nacional de Investigación e Innovación
institution Agencia Nacional de Investigación e Innovación
instname_str Agencia Nacional de Investigación e Innovación
language eng
network_acronym_str REDI
network_name_str REDI
oai_identifier_str oai:redi.anii.org.uy:20.500.12381/489
publishDate 2021
reponame_str REDI
repository.mail.fl_str_mv jmaldini@anii.org.uy
repository.name.fl_str_mv REDI - Agencia Nacional de Investigación e Innovación
repository_id_str 9421
rights_invalid_str_mv Reconocimiento 4.0 Internacional. (CC BY)
Acceso abierto
spelling Reconocimiento 4.0 Internacional. (CC BY)Acceso abiertoinfo:eu-repo/semantics/openAccess2021-12-08T18:50:31Z2021-12-08T18:50:31Z2021-10https://hdl.handle.net/20.500.12381/489POS_NAC_2018_1_152201Physical limitations in processor design have made computer industry since 2005 shift from improving the speed of a single processor to increasing the number of processing core units. But the design of software to exploit parallel processing power in a correct and cost-effective way is a challenging task requiring a high degree of expertise. In 2017, Pérez and Yovine proposed a pattern-based formally grounded tool that eases writing parallel code. In particular, the tool is based on a platform-agnostic parallel programming pattern called PCR, which describes computations performed concurrently by communicating Producers, Consumers and Reducers. It combines in a single and composable pattern several concepts like collective operations, stream programming, unbounded iteration and recursion. In this thesis, we formalize the semantics of the PCR pattern in terms of TLA+. In this way, we can leverage TLA$+ related tools to prove properties about high level PCR designs such as their functional correctness and refinements between different PCR designs. TLA+ is a formal specification language for concurrent systems that is being used at places such as Intel, Amazon and Microsoft. We thus contribute to the state of the art in formal refinement of parallel programs from abstract models, especially starting from an alternative characterization of the general PCR pattern, and utilizing the TLA+ framework. A presentation of the work in progress for this thesis was part of the TLA+ Community Event that was held (virtually) in October 2020 as a satellite of the DISC 2020 Conference.Agencia Nacional de Investigación e InnovaciónengUniversidad ORT Uruguayhttps://hdl.handle.net/20.500.12381/488Algoritmos paralelosPatrones de diseñoMétodos formalesCiencias Naturales y ExactasCiencias de la Computación e InformaciónOn the specification and verification of the PCR parallel programming pattern in TLA+Tesis de maestríaPublicadoinfo:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/masterThesis//Ciencias Naturales y Exactas/Ciencias de la Computación e Información/Ciencias de la Computación e Informaciónreponame:REDIinstname:Agencia Nacional de Investigación e Innovacióninstacron:Agencia Nacional de Investigación e InnovaciónSolsona, José E.Tasistro, AlvaroYovine, SergioLICENSElicense.txtlicense.txttext/plain; charset=utf-84746https://redi.anii.org.uy/jspui/bitstream/20.500.12381/489/2/license.txt2d97768b1a25a7df5a347bb58fd2d77fMD52ORIGINAL2021118-MI-182285.pdf2021118-MI-182285.pdfapplication/pdf3102326https://redi.anii.org.uy/jspui/bitstream/20.500.12381/489/1/2021118-MI-182285.pdf3bc0cc52137251713c15bec452d8699bMD5120.500.12381/4892021-12-08 15:57:14.474oai:redi.anii.org.uy:20.500.12381/489PHA+QWNlcHRhbmRvIGxhIGNlc2nDs24gZGUgZGVyZWNob3MgZWwgdXN1YXJpbyBERUNMQVJBIHF1ZSBvc3RlbnRhIGxhIGNvbmRpY2nDs24gZGUgYXV0b3IgZW4gZWwgc2VudGlkbyBxdWUgb3RvcmdhIGxhIGxlZ2lzbGFjacOzbiB2aWdlbnRlIHNvYnJlICBwcm9waWVkYWQgaW50ZWxlY3R1YWwgZGUgbGEgb2JyYSBvcmlnaW5hbCBxdWUgZXN0w6EgZW52aWFuZG8gKOKAnGxhIG9icmHigJ0pLiBFbiBjYXNvIGRlIHNlciBjb3RpdHVsYXIsIGVsIGF1dG9yIGRlY2xhcmEgcXVlIGN1ZW50YSBjb24gZWwgIGNvbnNlbnRpbWllbnRvIGRlIGxvcyByZXN0YW50ZXMgdGl0dWxhcmVzIHBhcmEgaGFjZXIgbGEgcHJlc2VudGUgY2VzacOzbi4gRW4gY2FzbyBkZSBwcmV2aWEgY2VzacOzbiBkZSBsb3MgZGVyZWNob3MgZGUgZXhwbG90YWNpw7NuIHNvYnJlIGxhIG9icmEgYSB0ZXJjZXJvcywgZWwgYXV0b3IgZGVjbGFyYSBxdWUgdGllbmUgbGEgYXV0b3JpemFjacOzbiBleHByZXNhIGRlIGRpY2hvcyB0aXR1bGFyZXMgZGUgZGVyZWNob3MgYSBsb3MgZmluZXMgZGUgZXN0YSBjZXNpw7NuLCBvIGJpZW4gcXVlIGhhIGNvbnNlcnZhZG8gbGEgZmFjdWx0YWQgZGUgY2VkZXIgZXN0b3MgZGVyZWNob3MgZW4gbGEgZm9ybWEgcHJldmlzdGEgZW4gbGEgcHJlc2VudGUgY2VzacOzbi48L3A+DQoNCjxwPkNvbiBlbCBmaW4gZGUgZGFyIGxhIG3DoXhpbWEgZGlmdXNpw7NuIGEgbGEgb2JyYSBhIHRyYXbDqXMgZGUgUkVESSwgZWwgQVVUT1IgQ0VERSBhIEFOSUksIGRlIGZvcm1hIGdyYXR1aXRhIHkgTk8gRVhDTFVTSVZBLCBjb24gY2Fyw6FjdGVyIGlycmV2b2NhYmxlIGUgaWxpbWl0YWRvIGVuIGVsIHRpZW1wbyB5IGNvbiDDoW1iaXRvIG11bmRpYWwsIGxvcyBkZXJlY2hvcyBkZSByZXByb2R1Y2Npw7NuLCBkZSBkaXN0cmlidWNpw7NuLCBkZSBjb211bmljYWNpw7NuIHDDumJsaWNhLCBpbmNsdWlkbyBlbCBkZXJlY2hvIGRlIHB1ZXN0YSBhIGRpc3Bvc2ljacOzbiBlbGVjdHLDs25pY2EsIHBhcmEgcXVlIHB1ZWRhIHNlciB1dGlsaXphZGEgZGUgZm9ybWEgbGlicmUgeSBncmF0dWl0YSBwb3IgdG9kb3MgbG9zIHF1ZSBsbyBkZXNlZW4uPC9wPg0KDQo8cD5MYSBjZXNpw7NuIHNlIHJlYWxpemEgYmFqbyBsYXMgc2lndWllbnRlcyBjb25kaWNpb25lczo8L3A+DQoNCjxwPkxhIHRpdHVsYXJpZGFkIGRlIGxhIG9icmEgc2VndWlyw6EgY29ycmVzcG9uZGllbmRvIGFsIEF1dG9yIHkgbGEgcHJlc2VudGUgY2VzacOzbiBkZSBkZXJlY2hvcyBwZXJtaXRpcsOhIGEgUkVESTo8L3A+DQoNCjx1bD4gPGxpIHZhbHVlPShhKT5UcmFuc2Zvcm1hciBsYSBvYnJhIGVuIGxhIG1lZGlkYSBlbiBxdWUgc2VhIG5lY2VzYXJpbyBwYXJhIGFkYXB0YXJsYSBhIGN1YWxxdWllciB0ZWNub2xvZ8OtYSBzdXNjZXB0aWJsZSBkZSBpbmNvcnBvcmFjacOzbiBhIEludGVybmV0OyByZWFsaXphciBsYXMgYWRhcHRhY2lvbmVzIG5lY2VzYXJpYXMgcGFyYSBoYWNlciBwb3NpYmxlIHN1IGFjY2VzbyB5IHZpc3VhbGl6YWNpw7NuIHBlcm1hbmVudGUsIGHDum4gcG9yIHBhcnRlIGRlIHBlcnNvbmFzIGNvbiBkaXNjYXBhY2lkYWQsIHJlYWxpemFyIGxhcyBtaWdyYWNpb25lcyBkZSBmb3JtYXRvcyBwYXJhIGFzZWd1cmFyIGxhIHByZXNlcnZhY2nDs24gYSBsYXJnbyBwbGF6bywgaW5jb3Jwb3JhciBsb3MgbWV0YWRhdG9zIG5lY2VzYXJpb3MgcGFyYSByZWFsaXphciBlbCByZWdpc3RybyBkZSBsYSBvYnJhLCBlIGluY29ycG9yYXIgdGFtYmnDqW4g4oCcbWFyY2FzIGRlIGFndWHigJ0gbyBjdWFscXVpZXIgb3RybyBzaXN0ZW1hIGRlIHNlZ3VyaWRhZCBvIGRlIHByb3RlY2Npw7NuIG8gZGUgaWRlbnRpZmljYWNpw7NuIGRlIHByb2NlZGVuY2lhLiBFbiBuaW5nw7puIGNhc28gZGljaGFzIG1vZGlmaWNhY2lvbmVzIGltcGxpY2Fyw6FuIGFkdWx0ZXJhY2lvbmVzIGVuIGVsIGNvbnRlbmlkbyBkZSBsYSBvYnJhLjwvbGk+IA0KPGxpIHZhbHVlPShiKT5SZXByb2R1Y2lyIGxhIG9icmEgZW4gdW4gbWVkaW8gZGlnaXRhbCBwYXJhIHN1IGluY29ycG9yYWNpw7NuIGEgc2lzdGVtYXMgZGUgYsO6c3F1ZWRhIHkgcmVjdXBlcmFjacOzbiwgaW5jbHV5ZW5kbyBlbCBkZXJlY2hvIGEgcmVwcm9kdWNpciB5IGFsbWFjZW5hcmxhIGVuIHNlcnZpZG9yZXMgdSBvdHJvcyBtZWRpb3MgZGlnaXRhbGVzIGEgbG9zIGVmZWN0b3MgZGUgc2VndXJpZGFkIHkgcHJlc2VydmFjacOzbi48L2xpPiANCjxsaSB2YWx1ZT0oYyk+UGVybWl0aXIgYSBsb3MgdXN1YXJpb3MgbGEgZGVzY2FyZ2EgZGUgY29waWFzIGVsZWN0csOzbmljYXMgZGUgbGEgb2JyYSBlbiB1biBzb3BvcnRlIGRpZ2l0YWwuPC9saT4gDQo8bGkgdmFsdWU9KGQpPlJlYWxpemFyIGxhIGNvbXVuaWNhY2nDs24gcMO6YmxpY2EgeSBwdWVzdGEgYSBkaXNwb3NpY2nDs24gZGUgbGEgb2JyYSBhY2Nlc2libGUgZGUgbW9kbyBsaWJyZSB5IGdyYXR1aXRvIGEgdHJhdsOpcyBkZSBJbnRlcm5ldC48L3VsPg0KDQo8cD5FbiB2aXJ0dWQgZGVsIGNhcsOhY3RlciBubyBleGNsdXNpdm8gZGUgbGEgY2VzacOzbiwgZWwgQXV0b3IgY29uc2VydmEgdG9kb3MgbG9zIGRlcmVjaG9zIGRlIGF1dG9yIHNvYnJlIGxhIG9icmEsIHkgcG9kcsOhIHBvbmVybGEgYSBkaXNwb3NpY2nDs24gZGVsIHDDumJsaWNvIGVuIGVzdGEgeSBlbiBwb3N0ZXJpb3JlcyB2ZXJzaW9uZXMsIGEgdHJhdsOpcyBkZSBsb3MgbWVkaW9zIHF1ZSBlc3RpbWUgb3BvcnR1bm9zLjwvcD4NCg0KPHA+RWwgQXV0b3IgZGVjbGFyYSBiYWpvIGp1cmFtZW50byBxdWUgbGEgcHJlc2VudGUgY2VzacOzbiBubyBpbmZyaW5nZSBuaW5nw7puIGRlcmVjaG8gZGUgdGVyY2Vyb3MsIHlhIHNlYW4gZGUgcHJvcGllZGFkIGluZHVzdHJpYWwsIGludGVsZWN0dWFsIG8gY3VhbHF1aWVyIG90cm8geSBnYXJhbnRpemEgcXVlIGVsIGNvbnRlbmlkbyBkZSBsYSBvYnJhIG5vIGF0ZW50YSBjb250cmEgbG9zIGRlcmVjaG9zIGFsIGhvbm9yLCBhIGxhIGludGltaWRhZCB5IGEgbGEgaW1hZ2VuIGRlIHRlcmNlcm9zLCBuaSBlcyBkaXNjcmltaW5hdG9yaW8uIFJFREkgZXN0YXLDoSBleGVudG8gZGUgbGEgcmV2aXNpw7NuIGRlbCBjb250ZW5pZG8gZGUgbGEgb2JyYSwgcXVlIGVuIHRvZG8gY2FzbyBwZXJtYW5lY2Vyw6EgYmFqbyBsYSByZXNwb25zYWJpbGlkYWQgZXhjbHVzaXZhIGRlbCBBdXRvci48L3A+DQoNCjxwPkxhIG9icmEgc2UgcG9uZHLDoSBhIGRpc3Bvc2ljacOzbiBkZSBsb3MgdXN1YXJpb3MgcGFyYSBxdWUgaGFnYW4gZGUgZWxsYSB1biB1c28ganVzdG8geSByZXNwZXR1b3NvIGRlIGxvcyBkZXJlY2hvcyBkZWwgYXV0b3IgeSBjb24gZmluZXMgZGUgZXN0dWRpbywgaW52ZXN0aWdhY2nDs24sIG8gY3VhbHF1aWVyIG90cm8gZmluIGzDrWNpdG8uIEVsIG1lbmNpb25hZG8gdXNvLCBtw6FzIGFsbMOhIGRlIGxhIGNvcGlhIHByaXZhZGEsIHJlcXVlcmlyw6EgcXVlIHNlIGNpdGUgbGEgZnVlbnRlIHkgc2UgcmVjb25vemNhIGxhIGF1dG9yw61hLiBBIHRhbGVzIGZpbmVzIGVsIEF1dG9yIGFjZXB0YSBlbCB1c28gZGUgbGljZW5jaWFzIENyZWF0aXZlIENvbW1vbnMgeSBFTElHRSB1bmEgZGUgZXN0YXMgbGljZW5jaWFzIGVzdGFuZGFyaXphZGFzIGEgbG9zIGZpbmVzIGRlIGNvbXVuaWNhciBzdSBvYnJhLjwvcD4NCg0KPHA+RWwgQXV0b3IsIGNvbW8gZ2FyYW50ZSBkZSBsYSBhdXRvcsOtYSBkZSBsYSBvYnJhIHkgZW4gcmVsYWNpw7NuIGEgbGEgbWlzbWEsIGRlY2xhcmEgcXVlIGxhIEFOSUkgc2UgZW5jdWVudHJhIGxpYnJlIGRlIHRvZG8gdGlwbyBkZSByZXNwb25zYWJpbGlkYWQsIHNlYSDDqXN0YSBjaXZpbCwgYWRtaW5pc3RyYXRpdmEgbyBwZW5hbCwgeSBxdWUgw6lsIG1pc21vIGFzdW1lIGxhIHJlc3BvbnNhYmlsaWRhZCBmcmVudGUgYSBjdWFscXVpZXIgcmVjbGFtbyBvIGRlbWFuZGEgcG9yIHBhcnRlIGRlIHRlcmNlcm9zLiBMQSBBTklJIGVzdGFyw6EgZXhlbnRhIGRlIGVqZXJjaXRhciBhY2Npb25lcyBsZWdhbGVzIGVuIG5vbWJyZSBkZWwgQXV0b3IgZW4gZWwgc3VwdWVzdG8gZGUgaW5mcmFjY2lvbmVzIGEgZGVyZWNob3MgZGUgcHJvcGllZGFkIGludGVsZWN0dWFsIGRlcml2YWRvcyBkZWwgZGVww7NzaXRvIHkgYXJjaGl2byBkZSBsYSBvYnJhLjwvcD4NCg0KPHA+QU5JSSBub3RpZmljYXLDoSBhbCBBdXRvciBkZSBjdWFscXVpZXIgcmVjbGFtYWNpw7NuIHF1ZSByZWNpYmEgZGUgdGVyY2Vyb3MgZW4gcmVsYWNpw7NuIGNvbiBsYSBvYnJhIHksIGVuIHBhcnRpY3VsYXIsIGRlIHJlY2xhbWFjaW9uZXMgcmVsYXRpdmFzIGEgbG9zIGRlcmVjaG9zIGRlIHByb3BpZWRhZCBpbnRlbGVjdHVhbCBzb2JyZSBlbGxhLjwvcD4NCg0KPHA+RWwgQXV0b3IgcG9kcsOhIHNvbGljaXRhciBlbCByZXRpcm8gbyBsYSBpbnZpc2liaWxpemFjacOzbiBkZSBsYSBvYnJhIGRlIFJFREkgc8OzbG8gcG9yIGNhdXNhIGp1c3RpZmljYWRhLiBBIHRhbCBmaW4gZGViZXLDoSBtYW5pZmVzdGFyIHN1IHZvbHVudGFkIGVuIGZvcm1hIGZlaGFjaWVudGUgeSBhY3JlZGl0YXIgZGViaWRhbWVudGUgbGEgY2F1c2EganVzdGlmaWNhZGEuIEFzaW1pc21vIEFOSUkgcG9kcsOhIHJldGlyYXIgbyBpbnZpc2liaWxpemFyIGxhIG9icmEgZGUgUkVESSwgcHJldmlhIG5vdGlmaWNhY2nDs24gYWwgQXV0b3IsIGVuIHN1cHVlc3RvcyBzdWZpY2llbnRlbWVudGUganVzdGlmaWNhZG9zLCBvIGVuIGNhc28gZGUgcmVjbGFtYWNpb25lcyBkZSB0ZXJjZXJvcy48L3A+Gobiernohttps://www.anii.org.uy/https://redi.anii.org.uy/oai/requestjmaldini@anii.org.uyUruguayopendoar:94212021-12-08T18:57:14REDI - Agencia Nacional de Investigación e Innovaciónfalse
spellingShingle On the specification and verification of the PCR parallel programming pattern in TLA+
Solsona, José E.
Algoritmos paralelos
Patrones de diseño
Métodos formales
Ciencias Naturales y Exactas
Ciencias de la Computación e Información
status_str publishedVersion
title On the specification and verification of the PCR parallel programming pattern in TLA+
title_full On the specification and verification of the PCR parallel programming pattern in TLA+
title_fullStr On the specification and verification of the PCR parallel programming pattern in TLA+
title_full_unstemmed On the specification and verification of the PCR parallel programming pattern in TLA+
title_short On the specification and verification of the PCR parallel programming pattern in TLA+
title_sort On the specification and verification of the PCR parallel programming pattern in TLA+
topic Algoritmos paralelos
Patrones de diseño
Métodos formales
Ciencias Naturales y Exactas
Ciencias de la Computación e Información
url https://hdl.handle.net/20.500.12381/489