Makina: A QuickCheck state machine library
This article presents Makina, a library written in the Elixir programming language, and a domain specific language for writing property-based testing models for stateful programs. Models written in the domain specific language are translated into standard QuickCheck state machines. Our main goals wi...
Saved in:
| Published in: | Journal of logical and algebraic methods in programming Vol. 148; p. 101096 |
|---|---|
| Main Authors: | , , , , |
| Format: | Journal Article |
| Language: | English |
| Published: |
Elsevier Inc
01.01.2026
|
| Subjects: | |
| ISSN: | 2352-2208 |
| Online Access: | Get full text |
| Tags: |
Add Tag
No Tags, Be the first to tag this record!
|
| Abstract | This article presents Makina, a library written in the Elixir programming language, and a domain specific language for writing property-based testing models for stateful programs. Models written in the domain specific language are translated into standard QuickCheck state machines. Our main goals with Makina are to facilitate the task of developing correct and maintainable models, and to encourage model reuse. To meet these goals, Makina provides a declarative syntax for defining model states and commands. In particular, Makina encourages the typing of specifications, and ensures that such type information can be used by Elixir type checking tools. Moreover, to promote model reuse, the domain specific language provides constructs that allow models to be defined in terms of collections of previously defined ones. To this end a number of operators for combining models have been defined and implemented in our library. A semantics for Makina models is presented in two steps. First, a novel operational semantics for standard QuickCheck state machine models is provided. Then, a translation from a Makina model to a standard QuickCheck state model is given. |
|---|---|
| AbstractList | This article presents Makina, a library written in the Elixir programming language, and a domain specific language for writing property-based testing models for stateful programs. Models written in the domain specific language are translated into standard QuickCheck state machines. Our main goals with Makina are to facilitate the task of developing correct and maintainable models, and to encourage model reuse. To meet these goals, Makina provides a declarative syntax for defining model states and commands. In particular, Makina encourages the typing of specifications, and ensures that such type information can be used by Elixir type checking tools. Moreover, to promote model reuse, the domain specific language provides constructs that allow models to be defined in terms of collections of previously defined ones. To this end a number of operators for combining models have been defined and implemented in our library. A semantics for Makina models is presented in two steps. First, a novel operational semantics for standard QuickCheck state machine models is provided. Then, a translation from a Makina model to a standard QuickCheck state model is given. |
| ArticleNumber | 101096 |
| Author | Bueso de Barrio, Luis Eduardo Herranz, Ángel Benac-Earle, Clara Fredlund, Lars-Åke Mariño, Julio |
| Author_xml | – sequence: 1 givenname: Luis Eduardo orcidid: 0000-0003-4040-2111 surname: Bueso de Barrio fullname: Bueso de Barrio, Luis Eduardo email: luiseduardo.bueso.debarrio@upm.es – sequence: 2 givenname: Lars-Åke orcidid: 0000-0002-8296-4609 surname: Fredlund fullname: Fredlund, Lars-Åke email: larsake.fredlund@upm.es – sequence: 3 givenname: Ángel orcidid: 0000-0002-6433-5681 surname: Herranz fullname: Herranz, Ángel email: angel.herranz@upm.es – sequence: 4 givenname: Clara orcidid: 0000-0002-8629-5289 surname: Benac-Earle fullname: Benac-Earle, Clara email: cbenac@fi.upm.es – sequence: 5 givenname: Julio orcidid: 0000-0002-2665-7612 surname: Mariño fullname: Mariño, Julio email: julio.marino@upm.es |
| BookMark | eNp9j0tLxDAUhbMYwXGcX-Cma6FjkrZ5CC6G4gtGRNB1SNIbJn0OSRX897bWtasDl_NdzneBVv3QA0JXBO8IJuym3tWt7k47imkxX7BkK7SmWUFTSrE4R9sYa4ynquAiI2t0_aIb3-vbZJ-8fXrblEewTRJHPULSaXv0PSStN0GH70t05nQbYfuXG_TxcP9ePqWH18fncn9IbYbxmBotKbWSUSakEcA4N8IInueVdGBxxV3OLeWESFkRphkFJ3mBHeRg8sLJbIOy5a8NQ4wBnDoF300DFMFqtlS1-rVUs6VaLCfqbqFgmvblIahoPfQWKh_Ajqoa_L_8D5ppXfQ |
| Cites_doi | 10.1016/0169-7552(87)90085-7 10.22152/programming-journal.org/2024/8/4 10.21105/joss.01891 10.1016/0167-6423(87)90035-9 10.1016/S0019-9958(84)80025-X 10.1145/197320.197383 |
| ContentType | Journal Article |
| Copyright | 2025 The Author(s) |
| Copyright_xml | – notice: 2025 The Author(s) |
| DBID | 6I. AAFTH AAYXX CITATION |
| DOI | 10.1016/j.jlamp.2025.101096 |
| DatabaseName | ScienceDirect Open Access Titles Elsevier:ScienceDirect:Open Access CrossRef |
| DatabaseTitle | CrossRef |
| DatabaseTitleList | |
| DeliveryMethod | fulltext_linktorsrc |
| Discipline | Computer Science |
| ExternalDocumentID | 10_1016_j_jlamp_2025_101096 S2352220825000628 |
| GroupedDBID | --M 0R~ 4.4 457 4G. 6I. 7-5 8P~ AAEDT AAEDW AAFTH AAIKJ AAKOC AALRI AAOAW AATTM AAXKI AAXUO AAYFN AAYWO ABBOA ABJNI ABMAC ABXDB ACDAQ ACGFS ACLOT ACRLP ACVFH ADBBV ADCNI ADEZE ADVLN AEBSH AEIPS AEKER AENEX AEUPX AFJKZ AFPUW AFTJW AGHFR AGUBO AIALX AIEXJ AIGII AIIUN AIKHN AITUG AKBMS AKRWK AKYEP ALMA_UNASSIGNED_HOLDINGS AMRAJ ANKPU AOUOD AXJTR BKOJK BLXMC EBS EFJIC EFKBS EFLBG EJD FDB FIRID FYGXN GBLVA GBOLZ HZ~ KOM M41 O9- OAUVE ROL SPC SPCBC SSV SSZ T5K ~G- AAYXX CITATION |
| ID | FETCH-LOGICAL-c300t-ba922c962689b8e677b8b8744d9fec0d7f47c271199d16a62ef9750fe4eb45f93 |
| ISICitedReferencesCount | 0 |
| ISICitedReferencesURI | http://www.webofscience.com/api/gateway?GWVersion=2&SrcApp=Summon&SrcAuth=ProQuest&DestLinkType=CitingArticles&DestApp=WOS_CPL&KeyUT=001606036200001&url=https%3A%2F%2Fcvtisr.summon.serialssolutions.com%2F%23%21%2Fsearch%3Fho%3Df%26include.ft.matches%3Dt%26l%3Dnull%26q%3D |
| ISSN | 2352-2208 |
| IngestDate | Thu Nov 27 00:52:47 EST 2025 Sat Nov 22 16:51:02 EST 2025 |
| IsDoiOpenAccess | true |
| IsOpenAccess | true |
| IsPeerReviewed | true |
| IsScholarly | true |
| Keywords | Property-based testing Model-based testing Modular specifications State machines Elixir |
| Language | English |
| License | This is an open access article under the CC BY license. |
| LinkModel | OpenURL |
| MergedId | FETCHMERGED-LOGICAL-c300t-ba922c962689b8e677b8b8744d9fec0d7f47c271199d16a62ef9750fe4eb45f93 |
| ORCID | 0000-0002-8629-5289 0000-0002-8296-4609 0000-0003-4040-2111 0000-0002-6433-5681 0000-0002-2665-7612 |
| OpenAccessLink | https://dx.doi.org/10.1016/j.jlamp.2025.101096 |
| ParticipantIDs | crossref_primary_10_1016_j_jlamp_2025_101096 elsevier_sciencedirect_doi_10_1016_j_jlamp_2025_101096 |
| PublicationCentury | 2000 |
| PublicationDate | January 2026 2026-01-00 |
| PublicationDateYYYYMMDD | 2026-01-01 |
| PublicationDate_xml | – month: 01 year: 2026 text: January 2026 |
| PublicationDecade | 2020 |
| PublicationTitle | Journal of logical and algebraic methods in programming |
| PublicationYear | 2026 |
| Publisher | Elsevier Inc |
| Publisher_xml | – name: Elsevier Inc |
| References | Lindahl, Sagonas (br0080) 2006 Liskov, Wing (br0260) 1994; 16 Harel (br0400) 1987; 8 Sane, Campbell (br0240) 1995 Arts, Hughes, Johansson, Wiger (br0020) 2006 Johnsson (br0290) 1985 Bolognesi, Brinksma (br0210) 1987; 14 R. Nilsson, ScalaCheck: The Definitive Guide, Artima, 2014. Cassola, Talagorria, Pardo, Viera (br0320) 2022; 68 Quviq (br0140) 2014 Papadakis, Sagonas (br0150) 2011 G. Gay, M. Staats, M.W. Whalen, M.P.E. Heimdahl, The risks of coverage-directed test case generation, IEEE Trans. Software Eng. br0360 Hughes, Pierce, Arts, Norell (br0040) 2016 Baader, Nipkow (br0280) 1998 Valim (br0060) 2012 Bergstra, Klop (br0220) 1984; 60 Stanley (br0130) 2021 Hughes, Bolinder (br0030) 2011 Bueso de Barrio, Fredlund, Herranz, Earle, Mariño (br0100) 2021 Goodrich, Tamassia (br0380) 2010 Castagna, Duboc, Valim (br0330) 2023; 8 Earle, Fredlund (br0050) 2015; vol. 9547 Löscher, Sagonas, Voigt (br0160) 2015 Lee, Seshia (br0230) 2016 Norell, Svensson, Arts (br0250) 2013 Lamport (br0350) 2003 Claessen, Hughes (br0010) 2000 Nishida, Palacios, Vidal (br0310) 2017 Román, Fredlund, Nogueira (br0370) 2020 Hopcroft, Ullman (br0190) 1979 Y. Gurevich, Evolving Algebras 1993: Lipari Guide. Bueso de Barrio, Fredlund, Herranz, Mariño, Benac Earle (br0340) 2025; 142 Alfert (br0070) 2015 Li, Thompson, Seijas, Francisco (br0170) 2014 Fredlund (br0300) 2001 MacIver, Hatfield-Dodds, many others (br0390) 2019; 4 Wijnja (br0090) 2020 Harel (10.1016/j.jlamp.2025.101096_br0400) 1987; 8 Bergstra (10.1016/j.jlamp.2025.101096_br0220) 1984; 60 Lee (10.1016/j.jlamp.2025.101096_br0230) 2016 Quviq (10.1016/j.jlamp.2025.101096_br0140) Lindahl (10.1016/j.jlamp.2025.101096_br0080) 2006 Claessen (10.1016/j.jlamp.2025.101096_br0010) 2000 Hughes (10.1016/j.jlamp.2025.101096_br0030) 2011 Stanley (10.1016/j.jlamp.2025.101096_br0130) 10.1016/j.jlamp.2025.101096_br0270 Norell (10.1016/j.jlamp.2025.101096_br0250) 2013 Nishida (10.1016/j.jlamp.2025.101096_br0310) 2017 Liskov (10.1016/j.jlamp.2025.101096_br0260) 1994; 16 Román (10.1016/j.jlamp.2025.101096_br0370) Li (10.1016/j.jlamp.2025.101096_br0170) 2014 Wijnja (10.1016/j.jlamp.2025.101096_br0090) Hopcroft (10.1016/j.jlamp.2025.101096_br0190) 1979 Arts (10.1016/j.jlamp.2025.101096_br0020) 2006 Valim (10.1016/j.jlamp.2025.101096_br0060) 10.1016/j.jlamp.2025.101096_br0110 Castagna (10.1016/j.jlamp.2025.101096_br0330) 2023; 8 Hughes (10.1016/j.jlamp.2025.101096_br0040) 2016 Sane (10.1016/j.jlamp.2025.101096_br0240) 1995 Bueso de Barrio (10.1016/j.jlamp.2025.101096_br0340) 2025; 142 MacIver (10.1016/j.jlamp.2025.101096_br0390) 2019; 4 Earle (10.1016/j.jlamp.2025.101096_br0050) 2015; vol. 9547 Baader (10.1016/j.jlamp.2025.101096_br0280) 1998 10.1016/j.jlamp.2025.101096_br0180 Lamport (10.1016/j.jlamp.2025.101096_br0350) 2003 Fredlund (10.1016/j.jlamp.2025.101096_br0300) 2001 Bolognesi (10.1016/j.jlamp.2025.101096_br0210) 1987; 14 Goodrich (10.1016/j.jlamp.2025.101096_br0380) 2010 Alfert (10.1016/j.jlamp.2025.101096_br0070) Bueso de Barrio (10.1016/j.jlamp.2025.101096_br0100) 2021 Papadakis (10.1016/j.jlamp.2025.101096_br0150) 2011 Cassola (10.1016/j.jlamp.2025.101096_br0320) 2022; 68 Löscher (10.1016/j.jlamp.2025.101096_br0160) 2015 Johnsson (10.1016/j.jlamp.2025.101096_br0290) 1985 |
| References_xml | – start-page: 39 year: 2011 end-page: 50 ident: br0150 article-title: A PropEr integration of types and function specifications with property-based testing publication-title: Proceedings of the 10th ACM SIGPLAN Workshop on Erlang, Erlang '11 – volume: 4 year: 2019 ident: br0390 article-title: Hypothesis: A new approach to property-based testing publication-title: J. Open Source Softw. – start-page: 169 year: 2014 end-page: 180 ident: br0170 article-title: Automating property-based testing of evolving web services publication-title: Proceedings of the ACM SIGPLAN 2014 Workshop on Partial Evaluation and Program Manipulation, PEPM 2014 – year: 2012 ident: br0060 – year: 2015 ident: br0070 – volume: vol. 9547 start-page: 40 year: 2015 end-page: 59 ident: br0050 article-title: Functional testing of Java programs publication-title: Trends in Functional Programming - 16th International Symposium, TFP 2015 – start-page: 17 year: 1995 end-page: 32 ident: br0240 article-title: Object-oriented state machines: subclassing, composition, delegation and genericity publication-title: Proceedings of the 10th Annual Conference on Object-Oriented Programming, Systems, Languages and Applications – start-page: 268 year: 2000 end-page: 279 ident: br0010 article-title: Quickcheck: a lightweight tool for random testing of Haskell programs publication-title: Proceedings of the Fifth ACM SIGPLAN International Conference on Functional Programming, ICFP '00 – year: 2020 ident: br0370 – year: 2020 ident: br0090 – reference: R. Nilsson, ScalaCheck: The Definitive Guide, Artima, 2014. – reference: Y. Gurevich, Evolving Algebras 1993: Lipari Guide. – start-page: 87 year: 2013 end-page: 92 ident: br0250 article-title: Testing blocking operations with QuickCheck's component library publication-title: Proceedings of the Twelfth ACM SIGPLAN Workshop on Erlang, Erlang '13 – start-page: 100 year: 2015 end-page: 108 ident: br0160 article-title: Property-based testing of sensor networks publication-title: Sensing, Communication, and Networking, 12th Annual IEEE International Conference on – year: 1998 ident: br0280 article-title: Term Rewriting and All That – start-page: 190 year: 1985 end-page: 203 ident: br0290 article-title: Lambda lifting: transforming programs to recursive equations publication-title: Functional Programming Languages and Computer Architecture – volume: 68 year: 2022 ident: br0320 article-title: A gradual type system for Elixir publication-title: J. Comput. Lang. – year: 2021 ident: br0130 – start-page: 135 year: 2016 end-page: 145 ident: br0040 article-title: Mysteries of DropBox: property-based testing of a distributed synchronization service publication-title: 2016 IEEE International Conference on Software Testing, Verification and Validation (ICST) – year: 2010 ident: br0380 article-title: Data Structures and Algorithms in Java – volume: 60 start-page: 109 year: 1984 end-page: 137 ident: br0220 article-title: Process algebra for synchronous communication publication-title: Inf. Control – year: 2001 ident: br0300 article-title: A framework for reasoning about Erlang code – start-page: 2 year: 2006 end-page: 10 ident: br0020 article-title: Testing telecoms software with Quviq QuickCheck publication-title: Proceedings of the 2006 ACM SIGPLAN Workshop on Erlang – volume: 16 start-page: 1811 year: 1994 end-page: 1841 ident: br0260 article-title: A behavioral notion of subtyping publication-title: ACM Trans. Program. Lang. Syst. – start-page: 72 year: 2011 end-page: 77 ident: br0030 article-title: Testing a database for race conditions with QuickCheck publication-title: Proceedings of the 10th ACM SIGPLAN Workshop on Erlang, Erlang '11 – volume: 8 year: 2023 ident: br0330 article-title: The design principles of the elixir type system publication-title: Art Sci. Eng. Program. – reference: G. Gay, M. Staats, M.W. Whalen, M.P.E. Heimdahl, The risks of coverage-directed test case generation, IEEE Trans. Software Eng. – start-page: 167 year: 2006 end-page: 178 ident: br0080 article-title: Practical type inference based on success typings publication-title: Proceedings of the 8th ACM SIGPLAN Symposium on Principles and Practice of Declarative Programming – volume: 8 start-page: 231 year: 1987 end-page: 274 ident: br0400 article-title: Statecharts: a visual formalism for complex systems publication-title: Sci. Comput. Program. – year: 2014 ident: br0140 – start-page: 259 year: 2017 end-page: 274 ident: br0310 article-title: A reversible semantics for Erlang publication-title: Logic-Based Program Synthesis and Transformation – volume: 142 year: 2025 ident: br0340 article-title: Executable contracts for Elixir publication-title: J. Log. Algebr. Methods Program. – ident: br0360 – year: 2016 ident: br0230 article-title: Introduction to Embedded Systems: A Cyber-Physical Systems Approach – start-page: 41 year: 2021 end-page: 53 ident: br0100 article-title: Makina: a new QuickCheck state machine library publication-title: Proceedings of the 20th ACM SIGPLAN International Workshop on Erlang, Erlang 2021 – year: 1979 ident: br0190 article-title: Introduction to Automata Theory, Languages, and Computation – volume: 14 start-page: 25 year: 1987 end-page: 59 ident: br0210 article-title: Introduction to the ISO specification language LOTOS publication-title: Comput. Netw. ISDN Syst. – year: 2003 ident: br0350 article-title: Specifying Systems: The TLA+ Language and Tools for Hardware and Software Engineers – volume: 14 start-page: 25 issue: 1 year: 1987 ident: 10.1016/j.jlamp.2025.101096_br0210 article-title: Introduction to the ISO specification language LOTOS publication-title: Comput. Netw. ISDN Syst. doi: 10.1016/0169-7552(87)90085-7 – start-page: 39 year: 2011 ident: 10.1016/j.jlamp.2025.101096_br0150 article-title: A PropEr integration of types and function specifications with property-based testing – ident: 10.1016/j.jlamp.2025.101096_br0090 – volume: 8 issue: 2 year: 2023 ident: 10.1016/j.jlamp.2025.101096_br0330 article-title: The design principles of the elixir type system publication-title: Art Sci. Eng. Program. doi: 10.22152/programming-journal.org/2024/8/4 – ident: 10.1016/j.jlamp.2025.101096_br0180 – start-page: 2 year: 2006 ident: 10.1016/j.jlamp.2025.101096_br0020 article-title: Testing telecoms software with Quviq QuickCheck – start-page: 87 year: 2013 ident: 10.1016/j.jlamp.2025.101096_br0250 article-title: Testing blocking operations with QuickCheck's component library – start-page: 72 year: 2011 ident: 10.1016/j.jlamp.2025.101096_br0030 article-title: Testing a database for race conditions with QuickCheck – start-page: 135 year: 2016 ident: 10.1016/j.jlamp.2025.101096_br0040 article-title: Mysteries of DropBox: property-based testing of a distributed synchronization service – volume: 68 year: 2022 ident: 10.1016/j.jlamp.2025.101096_br0320 article-title: A gradual type system for Elixir publication-title: J. Comput. Lang. – ident: 10.1016/j.jlamp.2025.101096_br0130 – start-page: 190 year: 1985 ident: 10.1016/j.jlamp.2025.101096_br0290 article-title: Lambda lifting: transforming programs to recursive equations – year: 1979 ident: 10.1016/j.jlamp.2025.101096_br0190 – volume: 4 issue: 43 year: 2019 ident: 10.1016/j.jlamp.2025.101096_br0390 article-title: Hypothesis: A new approach to property-based testing publication-title: J. Open Source Softw. doi: 10.21105/joss.01891 – start-page: 169 year: 2014 ident: 10.1016/j.jlamp.2025.101096_br0170 article-title: Automating property-based testing of evolving web services – start-page: 167 year: 2006 ident: 10.1016/j.jlamp.2025.101096_br0080 article-title: Practical type inference based on success typings – start-page: 259 year: 2017 ident: 10.1016/j.jlamp.2025.101096_br0310 article-title: A reversible semantics for Erlang – ident: 10.1016/j.jlamp.2025.101096_br0060 – year: 2016 ident: 10.1016/j.jlamp.2025.101096_br0230 – ident: 10.1016/j.jlamp.2025.101096_br0110 – volume: 8 start-page: 231 issue: 3 year: 1987 ident: 10.1016/j.jlamp.2025.101096_br0400 article-title: Statecharts: a visual formalism for complex systems publication-title: Sci. Comput. Program. doi: 10.1016/0167-6423(87)90035-9 – ident: 10.1016/j.jlamp.2025.101096_br0140 – year: 2003 ident: 10.1016/j.jlamp.2025.101096_br0350 – start-page: 100 year: 2015 ident: 10.1016/j.jlamp.2025.101096_br0160 article-title: Property-based testing of sensor networks – volume: 142 year: 2025 ident: 10.1016/j.jlamp.2025.101096_br0340 article-title: Executable contracts for Elixir publication-title: J. Log. Algebr. Methods Program. – volume: vol. 9547 start-page: 40 year: 2015 ident: 10.1016/j.jlamp.2025.101096_br0050 article-title: Functional testing of Java programs – ident: 10.1016/j.jlamp.2025.101096_br0070 – volume: 60 start-page: 109 issue: 1–3 year: 1984 ident: 10.1016/j.jlamp.2025.101096_br0220 article-title: Process algebra for synchronous communication publication-title: Inf. Control doi: 10.1016/S0019-9958(84)80025-X – volume: 16 start-page: 1811 year: 1994 ident: 10.1016/j.jlamp.2025.101096_br0260 article-title: A behavioral notion of subtyping publication-title: ACM Trans. Program. Lang. Syst. doi: 10.1145/197320.197383 – year: 2010 ident: 10.1016/j.jlamp.2025.101096_br0380 – start-page: 41 year: 2021 ident: 10.1016/j.jlamp.2025.101096_br0100 article-title: Makina: a new QuickCheck state machine library – ident: 10.1016/j.jlamp.2025.101096_br0270 – ident: 10.1016/j.jlamp.2025.101096_br0370 – year: 2001 ident: 10.1016/j.jlamp.2025.101096_br0300 – start-page: 268 year: 2000 ident: 10.1016/j.jlamp.2025.101096_br0010 article-title: Quickcheck: a lightweight tool for random testing of Haskell programs – year: 1998 ident: 10.1016/j.jlamp.2025.101096_br0280 – start-page: 17 year: 1995 ident: 10.1016/j.jlamp.2025.101096_br0240 article-title: Object-oriented state machines: subclassing, composition, delegation and genericity |
| SSID | ssj0001687831 |
| Score | 2.3275695 |
| Snippet | This article presents Makina, a library written in the Elixir programming language, and a domain specific language for writing property-based testing models... |
| SourceID | crossref elsevier |
| SourceType | Index Database Publisher |
| StartPage | 101096 |
| SubjectTerms | Elixir Model-based testing Modular specifications Property-based testing State machines |
| Title | Makina: A QuickCheck state machine library |
| URI | https://dx.doi.org/10.1016/j.jlamp.2025.101096 |
| Volume | 148 |
| WOSCitedRecordID | wos001606036200001&url=https%3A%2F%2Fcvtisr.summon.serialssolutions.com%2F%23%21%2Fsearch%3Fho%3Df%26include.ft.matches%3Dt%26l%3Dnull%26q%3D |
| hasFullText | 1 |
| inHoldings | 1 |
| isFullTextHit | |
| isPrint | |
| journalDatabaseRights | – providerCode: PRVESC databaseName: Elsevier SD Freedom Collection Journals 2021 issn: 2352-2208 databaseCode: AIEXJ dateStart: 20211207 customDbUrl: isFulltext: true dateEnd: 99991231 titleUrlDefault: https://www.sciencedirect.com omitProxy: false ssIdentifier: ssj0001687831 providerName: Elsevier |
| link | http://cvtisr.summon.serialssolutions.com/2.0.0/link/0/eLvHCXMwtV1Lb9NAEF6FlgMX3ojykg-cCK7sre3d5RZVRYBCBVKRcrPs3VlwkjqVk1T9FfxmZl9xCqWiBy5WZCfjjefzvHYehLyGTKo0r_M41QnEWQ06ritQ6LVqVK8yR5_Idtcfs-NjPpmIL4PBz1ALcz5nbcsvLsTZf2U1nkNmm9LZG7B7QxRP4GdkOh6R7Xj8J8Z_NvOlKldx_nXdyNnhD5Czoa0cGp7a3EkY-uDNX0zTIA9tI9f5d7O33Eg_bNrlnbusrtOg92w9BCwXQwVmB6NrbAB2vG6WJoMEQbjY4KQDNV-7aPYYnerY7NTzfNbjCzpUnzasbS-lIevWVRO1lYxNU2aXwIhuebUdt6DbcQsr3iiafjGlCb8ki13bTS9NU7NvV1wp6F3MYbo_xffGtB2l-X7_7ctttX9Td5skxJDfNi0tkdIQKR2RW2SXslyglNwdfTyafOqjdgVn3A653Cw_tLKySYN_LOdqc2fLhDm5T-56Bkcjh5kHZADtQ3IvzPWIvJh_RN44CL2LRlEPoMgCKPIAijyAHpNv749ODj_EfqZGLA-SZIUvoqBUCnRjuag5FIzVvDYjEJTQIBPFdMYkZWkqhEqLqqCgBRqVGjKos1yLgydkp1208JREWrJUqjwBBaYxAdJR6PujzQisFqg298jb8NfLM9c6pbzmme-RIjye0lt_zqorkefX_fDZze7znNzp4fiC7Ky6Nbwkt-X5qll2rzzDfwEKs3jo |
| linkProvider | Elsevier |
| openUrl | ctx_ver=Z39.88-2004&ctx_enc=info%3Aofi%2Fenc%3AUTF-8&rfr_id=info%3Asid%2Fsummon.serialssolutions.com&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&rft.genre=article&rft.atitle=Makina%3A+A+QuickCheck+state+machine+library&rft.jtitle=Journal+of+logical+and+algebraic+methods+in+programming&rft.au=Bueso+de+Barrio%2C+Luis+Eduardo&rft.au=Fredlund%2C+Lars-%C3%85ke&rft.au=Herranz%2C+%C3%81ngel&rft.au=Benac-Earle%2C+Clara&rft.date=2026-01-01&rft.issn=2352-2208&rft.volume=148&rft.spage=101096&rft_id=info:doi/10.1016%2Fj.jlamp.2025.101096&rft.externalDBID=n%2Fa&rft.externalDocID=10_1016_j_jlamp_2025_101096 |
| thumbnail_l | http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/lc.gif&issn=2352-2208&client=summon |
| thumbnail_m | http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/mc.gif&issn=2352-2208&client=summon |
| thumbnail_s | http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/sc.gif&issn=2352-2208&client=summon |