Two type extensions for the constraint modelling language MiniZinc
In this paper we present two type extensions for the modelling language MiniZinc that allow the representation of some problems in a more natural way. The first proposal, called MiniZinc? , extends existing types with additional values. The user can specify both the extension of a predefined type wi...
| Autores: | , , |
|---|---|
| Tipo de recurso: | artículo |
| Fecha de publicación: | 2015 |
| País: | España |
| Repositorio: | Docta Complutense |
| Idioma: | inglés |
| OAI Identifier: | oai:docta.ucm.es:20.500.14352/24376 |
| Acceso en línea: | https://hdl.handle.net/20.500.14352/24376 |
| Access Level: | acceso abierto |
| Palabra clave: | 004.438MiniZinc Constraint Programming NULL values Union Types Lenguajes de programación 1203.23 Lenguajes de Programación |
| id |
ES_d2cf3d1520c5cae7e6a1a7ae320d826d |
|---|---|
| oai_identifier_str |
oai:docta.ucm.es:20.500.14352/24376 |
| network_acronym_str |
ES |
| network_name_str |
España |
| repository_id_str |
|
| spelling |
Two type extensions for the constraint modelling language MiniZincCaballero Roldán, RafaelStuckey, Peter J.Tenorio Fornés, Ámbar004.438MiniZincConstraint ProgrammingNULL valuesUnion TypesLenguajes de programación1203.23 Lenguajes de ProgramaciónIn this paper we present two type extensions for the modelling language MiniZinc that allow the representation of some problems in a more natural way. The first proposal, called MiniZinc? , extends existing types with additional values. The user can specify both the extension of a predefined type with new values, and the behavior of the operations with relation to the new types. We illustrate the usage of MiniZinc? to model SQL-like problems with integer variables extended with NULL values. The second extension, MiniZinc+, introduces union types in the language. This allows defining recursive types such as trees, which are very useful for modelling problems that involve complex structures. A new case statement is introduced to select the different components of union type terms. The paper shows how a model defined using these extensions can be transformed into a MiniZinc model which is equivalent to the original model.ElsevierUniversidad Complutense de Madrid20232023-06-1820152015-11-0120152015-11-01journal articlehttp://purl.org/coar/resource_type/c_6501info:eu-repo/semantics/articleapplication/pdfhttps://hdl.handle.net/20.500.14352/24376reponame:Docta Complutenseinstname:Inglésengopen accesshttp://purl.org/coar/access_right/c_abf2info:eu-repo/semantics/openAccessoai:docta.ucm.es:20.500.14352/243762025-08-02T12:44:52Z |
| dc.title.none.fl_str_mv |
Two type extensions for the constraint modelling language MiniZinc |
| title |
Two type extensions for the constraint modelling language MiniZinc |
| spellingShingle |
Two type extensions for the constraint modelling language MiniZinc Caballero Roldán, Rafael 004.438MiniZinc Constraint Programming NULL values Union Types Lenguajes de programación 1203.23 Lenguajes de Programación |
| title_short |
Two type extensions for the constraint modelling language MiniZinc |
| title_full |
Two type extensions for the constraint modelling language MiniZinc |
| title_fullStr |
Two type extensions for the constraint modelling language MiniZinc |
| title_full_unstemmed |
Two type extensions for the constraint modelling language MiniZinc |
| title_sort |
Two type extensions for the constraint modelling language MiniZinc |
| dc.creator.none.fl_str_mv |
Caballero Roldán, Rafael Stuckey, Peter J. Tenorio Fornés, Ámbar |
| author |
Caballero Roldán, Rafael |
| author_facet |
Caballero Roldán, Rafael Stuckey, Peter J. Tenorio Fornés, Ámbar |
| author_role |
author |
| author2 |
Stuckey, Peter J. Tenorio Fornés, Ámbar |
| author2_role |
author author |
| dc.contributor.none.fl_str_mv |
Universidad Complutense de Madrid |
| dc.subject.none.fl_str_mv |
004.438MiniZinc Constraint Programming NULL values Union Types Lenguajes de programación 1203.23 Lenguajes de Programación |
| topic |
004.438MiniZinc Constraint Programming NULL values Union Types Lenguajes de programación 1203.23 Lenguajes de Programación |
| description |
In this paper we present two type extensions for the modelling language MiniZinc that allow the representation of some problems in a more natural way. The first proposal, called MiniZinc? , extends existing types with additional values. The user can specify both the extension of a predefined type with new values, and the behavior of the operations with relation to the new types. We illustrate the usage of MiniZinc? to model SQL-like problems with integer variables extended with NULL values. The second extension, MiniZinc+, introduces union types in the language. This allows defining recursive types such as trees, which are very useful for modelling problems that involve complex structures. A new case statement is introduced to select the different components of union type terms. The paper shows how a model defined using these extensions can be transformed into a MiniZinc model which is equivalent to the original model. |
| publishDate |
2015 |
| dc.date.none.fl_str_mv |
2015 2015-11-01 2015 2015-11-01 2023 2023-06-18 |
| dc.type.none.fl_str_mv |
journal article http://purl.org/coar/resource_type/c_6501 info:eu-repo/semantics/article |
| format |
article |
| dc.identifier.none.fl_str_mv |
https://hdl.handle.net/20.500.14352/24376 |
| url |
https://hdl.handle.net/20.500.14352/24376 |
| dc.language.none.fl_str_mv |
Inglés eng |
| language_invalid_str_mv |
Inglés |
| language |
eng |
| dc.rights.none.fl_str_mv |
open access http://purl.org/coar/access_right/c_abf2 info:eu-repo/semantics/openAccess |
| rights_invalid_str_mv |
open access http://purl.org/coar/access_right/c_abf2 |
| eu_rights_str_mv |
openAccess |
| dc.format.none.fl_str_mv |
application/pdf |
| dc.publisher.none.fl_str_mv |
Elsevier |
| publisher.none.fl_str_mv |
Elsevier |
| dc.source.none.fl_str_mv |
reponame:Docta Complutense instname: |
| instname_str |
|
| reponame_str |
Docta Complutense |
| collection |
Docta Complutense |
| repository.name.fl_str_mv |
|
| repository.mail.fl_str_mv |
|
| _version_ |
1844180503417061376 |
| score |
15,647109 |