Lifting Numeric Relational Domains to Algebraic Data Types (extended version) - Inria - Institut national de recherche en sciences et technologies du numérique
Reports (Research Report) Year : 2023

Lifting Numeric Relational Domains to Algebraic Data Types (extended version)

Abstract

We present RAND, a relational abstract domain that expresses relations between values of non-recursive algebraic data types (ADTs), and numeric relations between their scalar parts. RAND is parametrised on a user-provided numeric relational domain, that we lift to pairs of variables and projection paths. It is constructed as a disjunctive completion of a reduced product of domains for numeric relations, for equalities, and for cases of variant constructors. Using RAND, we define a modular, inter-procedural, relational analysis for a while language with ADTs and function calls. The analysis computes function summaries, that describe relations between the inputs of programs and their outputs.
Fichier principal
Vignette du fichier
sas2022.pdf (5.66 Mo) Télécharger le fichier
Origin Files produced by the author(s)

Dates and versions

hal-03765357 , version 1 (31-08-2022)
hal-03765357 , version 2 (01-09-2022)
hal-03765357 , version 3 (16-09-2022)
hal-03765357 , version 4 (26-06-2023)

Identifiers

  • HAL Id : hal-03765357 , version 4

Cite

Santiago Bautista, Thomas Jensen, Benoît Montagu. Lifting Numeric Relational Domains to Algebraic Data Types (extended version). [Research Report] Centre Inria de l'Université de Rennes; Univ Rennes. 2023. ⟨hal-03765357v4⟩
472 View
84 Download

Share

More