Convenient Algebraic Programming with Coercive Subtyping
This paper presents a system for more convenient algebraic programming, where datatypes are defined as least fixed points of covariant signature functors, and recursive functions are defined as homomorphisms from initial algebras. This approach requires rolling and unrolling fixed points, and conversion of algebras to functions that recurse over data. To alleviate the burden of these extra operations, in this paper we propose to insert them automatically, using coercive subtyping. The type checker generates subtyping constraints, which are then solved with the help of a custom logic programming engine called Chronolog. The subtyping axioms are given to Chronolog as rules, which uses them to solve the subtyping constraints. To avoid infinite applications of rules for unrolling signature functors, Chronolog provides a mechanism for suspending and resuming certain forms of constraints. The subtyping axioms presented to Chronolog are an equivalent algorithmic version of the usual declarative rules for algebraic programming.
Thu 27 AugDisplayed time zone: Eastern Time (US & Canada) change
15:30 - 17:30 | Thursday Afternoon Session 2LOPSTR+PPDP at HO221 Presidents Room Chair(s): Kyle Dewey California State University, Northridge | ||
15:30 30mTalk | From Constraints to Cognition: A Hybrid Framework for Adaptive, Explainable SchedulingRemoteBest Paper Award LOPSTR+PPDP Stefania Costantini Dipartimento di Ingegneria e Scienze dell'Informazione eMatematica, Univ. dell'Aquila, Valentina Pitoni Univaq, Andrea Formisano Università di Perugia , Lorenzo De Lauretis Univaq | ||
16:00 30mTalk | Strong and NAF Negations in Answer Set ProgrammingRemote LOPSTR+PPDP Yuliya Lierler University of Nebraska | ||
16:30 30mTalk | Convenient Algebraic Programming with Coercive Subtyping LOPSTR+PPDP | ||