Solvability in Call-by-Push-Value Giulio Guerrieri Delia Kesner (Dept. CS, Univ. of Bath) (IRIF, Univ. de Paris) Call-by-Push-Value. The Call-by-Push-Value (CBPV) paradigm, introduced by P. B. Levy [11, 12], distinguishes between values and computations under the slogan “a value is, a computation does”. It subsumes the λ-calculus by adding some primitives that allow to capture both the Call-by-Name (CBN) and Call-by-Value (CBV) semantics. Essentially, CBPV introduces unary primitives thunk and force. The former freezes the execution of a term (i.e. it is not allowed to compute under a thunk) while the latter fires again a frozen term. Informally, force(thunk(t)) is semantically equivalent to t. Resorting to the paradigm slogan, thunk turns a computation into a value, while force does the opposite. Thus, CBN and CBV are captured by conveniently labelling a λ-term using force and thunk to pause/resume the evaluation of a subterm depending on whether it is an argument (CBN) or a function (CBV). In doing so, CBPV provides a unique formalism capturing two distinct λ-calculi strategies, thus allowing to study operational and denotational semantics of different evaluation strategies in a unified framework. Bang calculus. T. Ehrhard [3] considered CBPV under a linear-logic perspective, showing that Levy’s primitives can be interpreted as well-known constructs of linear logic (LL, [5]). Ehrhard and Guerrieri [4] studied the bang calculus—the untyped version of the implicative fragment of CBPV—under this LL perspective. The bang calculus is essentially an extension of the λ-calculus with two new constructors, namely bang (!, corresponding to thunk) and dereliction (der, corresponding to force), together with the reduction rule der(!t) → t. There are two interesting notions of reduction for the bang calculus, depending on whether reduction takes place under a bang constructor (strong reduction) or not (weak reduction). Ehrhard and Guerrieri [4] showed how (weak) CBPV captures the CBN and CBV semantics of the λ-calculus via Girard’s translations [5] of intuitionistic logic into LL. Other operational properties and intersection types for the weak bang calculus were studied in [6, 8]. CBN Solvability. The solvability notion denotes a term that can operationally inter- act with the environment by producing a given output when inserted into an appropriate context. Formally, in the framework of the CBN λ-calculus, a closed (i.e. without free variables) λ-term t is solvable if there are n ≥ 0 and some terms u 1 ,...,u n such that tu 1 ...u n reduces to the identity function. Closed solvable terms represent meaningful programs: if t is closed and solvable, then t can produce any desired result when applied to a suitable sequence of arguments. This notion can be easily extended to open terms, through head contexts, which do the job of both closing the term and then applying it to an appropriate sequence of arguments. Thus, a λ-term t is solvable if there is a head context H such that, when H is filled by t, then H[t] is closed and reduces to the identity function.