Recurrence extraction and denotational semantics with recursive definitions

08/05/2022
by   Norman Danner, et al.
0

With one exception, our previous work on recurrence extraction and denotational semantics has focused on a source language that supports inductive types and structural recursion. The exception handles general recursion via an initial translation into call-by-push-value. In this note we give an extraction function from a language with general recursive function definitions and recursive types directly to a PCF-like recurrence language. We prove the main soundness result (that the syntactic recurrences in fact bound the operational cost) without the use of a logical relation, thereby significantly simplifying the proof compared to our previous work (at the cost of placing more demands on the models of the recurrence language). We then define two models of the recurrence language, one for analyzing merge sort, and another for analyzing quick sort, as case studies to understand model definitions for justifying the extracted recurrences.

READ FULL TEXT

page 4

page 9

page 17

page 18

page 27

research
06/26/2020

Denotational recurrence extraction for amortized analysis

A typical way of analyzing the time complexity of functional programs is...
research
11/20/2018

A right-to-left type system for mutually-recursive value definitions

In call-by-value languages, some mutually-recursive value definitions ca...
research
04/01/2023

Topologically sorting VDM-SL definitions for Isabelle/HOL translation

There is an ecosystem of VDM libraries and extensions that includes a tr...
research
08/23/2023

A Frame Stack Semantics for Sequential Core Erlang

We present a small-step, frame stack style, semantics for sequential Cor...
research
01/26/2022

Polarized Subtyping

Polarization of types in call-by-push-value naturally leads to the separ...
research
01/03/2022

let (rec) insertion without Effects, Lights or Magic

Let insertion in program generation is producing code with definitions (...
research
08/30/2021

Satisfiability and Containment of Recursive SHACL

The Shapes Constraint Language (SHACL) is the recent W3C recommendation ...

Please sign up or login with your details

Forgot password? Click here to reset