Cargando…
A Decision Procedure for String to Code Point Conversion
In text encoding standards such as Unicode, text strings are sequences of code points, each of which can be represented as a natural number. We present a decision procedure for a concatenation-free theory of strings that includes length and a conversion function from strings to integer code points....
Autores principales: | , , , |
---|---|
Formato: | Online Artículo Texto |
Lenguaje: | English |
Publicado: |
2020
|
Materias: | |
Acceso en línea: | https://www.ncbi.nlm.nih.gov/pmc/articles/PMC7324130/ http://dx.doi.org/10.1007/978-3-030-51074-9_13 |
_version_ | 1783551886726529024 |
---|---|
author | Reynolds, Andrew Nötzli, Andres Barrett, Clark Tinelli, Cesare |
author_facet | Reynolds, Andrew Nötzli, Andres Barrett, Clark Tinelli, Cesare |
author_sort | Reynolds, Andrew |
collection | PubMed |
description | In text encoding standards such as Unicode, text strings are sequences of code points, each of which can be represented as a natural number. We present a decision procedure for a concatenation-free theory of strings that includes length and a conversion function from strings to integer code points. Furthermore, we show how many common string operations, such as conversions between lowercase and uppercase, can be naturally encoded using this conversion function. We describe our implementation of this approach in the SMT solver CVC4, which contains a high-performance string subsolver, and show that the use of a native procedure for code points significantly improves its performance with respect to other state-of-the-art string solvers. |
format | Online Article Text |
id | pubmed-7324130 |
institution | National Center for Biotechnology Information |
language | English |
publishDate | 2020 |
record_format | MEDLINE/PubMed |
spelling | pubmed-73241302020-06-30 A Decision Procedure for String to Code Point Conversion Reynolds, Andrew Nötzli, Andres Barrett, Clark Tinelli, Cesare Automated Reasoning Article In text encoding standards such as Unicode, text strings are sequences of code points, each of which can be represented as a natural number. We present a decision procedure for a concatenation-free theory of strings that includes length and a conversion function from strings to integer code points. Furthermore, we show how many common string operations, such as conversions between lowercase and uppercase, can be naturally encoded using this conversion function. We describe our implementation of this approach in the SMT solver CVC4, which contains a high-performance string subsolver, and show that the use of a native procedure for code points significantly improves its performance with respect to other state-of-the-art string solvers. 2020-05-30 /pmc/articles/PMC7324130/ http://dx.doi.org/10.1007/978-3-030-51074-9_13 Text en © Springer Nature Switzerland AG 2020 This article is made available via the PMC Open Access Subset for unrestricted research re-use and secondary analysis in any form or by any means with acknowledgement of the original source. These permissions are granted for the duration of the World Health Organization (WHO) declaration of COVID-19 as a global pandemic. |
spellingShingle | Article Reynolds, Andrew Nötzli, Andres Barrett, Clark Tinelli, Cesare A Decision Procedure for String to Code Point Conversion |
title | A Decision Procedure for String to Code Point Conversion |
title_full | A Decision Procedure for String to Code Point Conversion |
title_fullStr | A Decision Procedure for String to Code Point Conversion |
title_full_unstemmed | A Decision Procedure for String to Code Point Conversion |
title_short | A Decision Procedure for String to Code Point Conversion |
title_sort | decision procedure for string to code point conversion |
topic | Article |
url | https://www.ncbi.nlm.nih.gov/pmc/articles/PMC7324130/ http://dx.doi.org/10.1007/978-3-030-51074-9_13 |
work_keys_str_mv | AT reynoldsandrew adecisionprocedureforstringtocodepointconversion AT notzliandres adecisionprocedureforstringtocodepointconversion AT barrettclark adecisionprocedureforstringtocodepointconversion AT tinellicesare adecisionprocedureforstringtocodepointconversion AT reynoldsandrew decisionprocedureforstringtocodepointconversion AT notzliandres decisionprocedureforstringtocodepointconversion AT barrettclark decisionprocedureforstringtocodepointconversion AT tinellicesare decisionprocedureforstringtocodepointconversion |