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...

Full description

Saved in:
Bibliographic Details
Published in:Journal of logical and algebraic methods in programming Vol. 148; p. 101096
Main Authors: Bueso de Barrio, Luis Eduardo, Fredlund, Lars-Åke, Herranz, Ángel, Benac-Earle, Clara, Mariño, Julio
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