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

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 3

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. 2022. ⟨hal-03765357v3⟩
408 View
59 Download

Share

Gmail Mastodon Facebook X LinkedIn More