Skip to main content
Home

Main navigation

  • Home
  • Series
  • People
  • Depts & Colleges
  • Open Education

Main navigation

  • Home
  • Series
  • People
  • Depts & Colleges
  • Open Education

Assuring AI

Series
International Conference on Functional Programming 2017
Embed
John Launchbury, Chief Scientist of Galois Inc, gives the second keynote of the ICFP conference.
Somewhat ironically, just as traditional systems software finally comes within reach of detailed mathematical verification, the demand for verification technology is rapidly expanding into domains that pose very different kinds of challenges. How could a face recognition technology be verified, for example, when it is not clear even how to state a correctness property? Or how should we attempt to verify an autonomous system like a self-driving car? This talk will attempt to lay out the problem space, and offer some ideas for how the verification community might start tackling the problem of assuring AI.
Creative Commons Licence
Creative Commons Attribution-Non-Commercial-Share Alike 2.0 UK (BY-NC-SA): England & Wales; https://creativecommons.org/licenses/by-nc-sa/2.0/uk/

Episode Information

Series
International Conference on Functional Programming 2017
People
John Launchbury
Keywords
technology. AI
artificial intelligence
computing
programming
Department: Department of Computer Science
Date Added: 18/12/2017
Duration: 00:53:21

Subscribe

Download

Effect-Driven QuickChecking of Compilers

Series
International Conference on Functional Programming 2017
Embed
Jan Midtgaard, gives the fourth presentation in the fourth panel, Effects, in the ICFP 2017 conference. Co-written by Mathias Nygaard Justesen, Patrick Kasting, Flemming Nielson, Hanne Riis Nielson, DTU, Denmark.
How does one test a language implementation with QuickCheck (aka. property-based testing)? One approach is to generate programs following the grammar of the language. But in a statically-typed language such as OCaml too many of these candidate programs will be rejected as ill-typed by the type checker. As a refinement Pałka et al. propose to generate programs in a goal-directed, bottom-up reading up of the typing relation. We have written such a generator. However many of the generated programs has output that depend on the evaluation order, which is commonly under-specified in languages such as OCaml, Scheme, C, C++, etc. In this paper we develop a type and effect system for conservatively detecting evaluation-order dependence and propose its goal-directed reading as a generator of programs that are independent of evaluation order. We illustrate the approach by generating programs to test OCaml's two compiler backends against each other and report on a number of bugs we have found doing so.
Creative Commons Licence
Creative Commons Attribution-Non-Commercial-Share Alike 2.0 UK (BY-NC-SA): England & Wales; https://creativecommons.org/licenses/by-nc-sa/2.0/uk/

Episode Information

Series
International Conference on Functional Programming 2017
People
Jan Midtgaard
Keywords
computing
programming
technology
Department: Department of Computer Science
Date Added: 18/12/2017
Duration: 00:18:19

Subscribe

Download

Imperative Functional Programs that Explain their Work

Series
International Conference on Functional Programming 2017
Embed
Jan Stolarek, University of Edinburgh, UK, gives the third presentation in the fourth panel, Effects, in the ICFP 2017 conference. Co-written by Wilmer Ricciotti, Roly Perera and James Cheney, and University of Edinburgh, UK.
Program slicing provides explanations that illustrate how program outputs were produced from inputs. We build on an approach introduced in prior work, where dynamic slicing was defined for pure higher-order functional programs as a Galois connection between lattices of partial inputs and partial outputs. We extend this approach to imperative functional programs that combine higher-order programming with references and exceptions. We present proofs of correctness and optimality of our approach and a proof-of-concept implementation and experimental evaluation.
Creative Commons Licence
Creative Commons Attribution-Non-Commercial-Share Alike 2.0 UK (BY-NC-SA): England & Wales; https://creativecommons.org/licenses/by-nc-sa/2.0/uk/

Episode Information

Series
International Conference on Functional Programming 2017
People
Jan Stolarek
Keywords
technology
computing
programming
Department: Department of Computer Science
Date Added: 18/12/2017
Duration: 00:17:44

Subscribe

Download

The Two Gentlemen of Verona

Series
Approaching Shakespeare
Embed
Professor Emma Smith gives the last of her 2017 Shakespeare lectures on his early comedy, Two Gentlemen of Verona.
Creative Commons Licence
Creative Commons Attribution-Non-Commercial-Share Alike 2.0 UK (BY-NC-SA): England & Wales; https://creativecommons.org/licenses/by-nc-sa/2.0/uk/

Episode Information

Series
Approaching Shakespeare
People
Emma Smith
Keywords
shakespeare
play
comedy
drama
Elizabethan Theatre
Department: Faculty of English Language and Literature
Date Added: 15/12/2017
Duration: 00:44:47

Subscribe

Download

Can Yule Solve My Problems? - Alex Bellos

Series
The Secrets of Mathematics
Embed
In our Oxford Mathematics Christmas Lecture Alex Bellos challenges you with some festive brainteasers as he tells the story of mathematical puzzles from the middle ages to modern day.

Alex is the Guardian’s puzzle blogger as well as the author of several works of popular maths, including Puzzle Ninja, Can You Solve My Problems? and Alex’s Adventures in Numberland.

Episode Information

Series
The Secrets of Mathematics
People
Alex Bellos
Keywords
maths
mathematics
mathematical puzzles
modern day
Department: Mathematical Institute
Date Added: 13/12/2017
Duration:

Subscribe

Download

Digital Rhetoric, literae humaniores and Leibniz's dream

Series
Voltaire Foundation
Embed
Willard McCarty, King's College, London, gives the 2017 Besterman lecture.
If the digital computer is to be a 'machine for doing thinking' in the arts and letters, rather than merely a way of automating tasks we already know how to perform, then its constraints and the powers these constraints define need to be understood. This lecture explores those constraints and powers across the three stages of modelling a research problem: its translation into discrete, binary form; manipulation by the machine; and re-translation into scholarly terms.

Episode Information

Series
Voltaire Foundation
People
Willard McCarty
Keywords
digital humanities
modelling
reasoning
machine to think with
Department: Voltaire Foundation
Date Added: 13/12/2017
Duration: 00:42:56

Subscribe

Download

On the Expressive Power of User-Defined Effects: Effect Handlers, Monadic Reflection, Delimited Control

Series
International Conference on Functional Programming 2017
Embed
Ohad Kammar, University of Oxford, UK, gives the second presentation in the fourth panel, Effects, in the ICFP 2017 conference.
Co-written by Yannick Forster (Saarland University, Germany and University of Cambridge, UK), Sam Lindley (University of Edinburgh).

We compare the expressive power of three programming abstractions for user-defined computational effects: Bauer and Pretnar's effect handlers, Filinski's monadic reflection, and delimited control without answer-type-modification. This comparison allows a precise discussion about the relative expressiveness of each programming abstraction. It also demonstrates the sensitivity of the relative expressiveness of user-defined effects to seemingly orthogonal language features.

We present three calculi, one per abstraction, extending Levy's call-by-push-value. For each calculus, we present syntax, operational semantics, a natural type-and-effect system, and, for effect handlers and monadic reflection, a set-theoretic denotational semantics. We establish their basic meta-theoretic properties: safety, termination, and, where applicable, soundness and adequacy. Using Felleisen's notion of a macro translation, we show that these abstractions can macro-express each other, and show which translations preserve typeability. We use the adequate finitary set-theoretic denotational semantics for the monadic calculus to show that effect handlers cannot be macro-expressed while preserving typeability either by monadic reflection or by delimited control. We supplement our development with a mechanised Abella formalisation.
Creative Commons Licence
Creative Commons Attribution-Non-Commercial-Share Alike 2.0 UK (BY-NC-SA): England & Wales; https://creativecommons.org/licenses/by-nc-sa/2.0/uk/

Episode Information

Series
International Conference on Functional Programming 2017
People
Ohad Kammar
Keywords
computing
programming
technology
Department: Department of Computer Science
Date Added: 13/12/2017
Duration: 00:18:19

Subscribe

Download

Abstracting Definitional Interpreters

Series
International Conference on Functional Programming 2017
Embed
David Darais, University of Maryland, USA, gives the first presentation in the fourth panel, Effects, in the ICFP 2017 conference. Co-written by Nicholas Labich, David Van Horn, Phuc C. Nguyen, University of Maryland, USA.
In this functional pearl, we examine the use of definitional interpreters as a basis for abstract interpretation of higher-order programming languages. As it turns out, definitional interpreters, especially those written in monadic style, can provide a nice basis for a wide variety of collecting semantics, abstract interpretations, symbolic executions, and their intermixings.

But the real insight of this story is a replaying of an insight from Reynold's landmark paper, Definitional Interpreters for Higher-Order Programming Languages, in which he observes definitional interpreters enable the defined-language to inherit properties of the defining-language. We show the same holds true for definitional abstract interpreters. Remarkably, we observe that abstract definitional interpreters can inherit the so-called 'pushdown control flow' property, wherein function calls and returns are precisely matched in the abstract semantics, simply by virtue of the function call mechanism of the defining-language.

The first approaches to achieve this property for higher-order languages appeared within the last ten years, and have since been the subject of many papers. These approaches start from a state-machine semantics and uniformly involve significant technical engineering to recover the precision of pushdown control flow. In contrast, starting from a definitional interpreter, the pushdown control flow property is inherent in the meta-language and requires no further technical mechanism to achieve.
Creative Commons Licence
Creative Commons Attribution-Non-Commercial-Share Alike 2.0 UK (BY-NC-SA): England & Wales; https://creativecommons.org/licenses/by-nc-sa/2.0/uk/

Episode Information

Series
International Conference on Functional Programming 2017
People
David Darais
Keywords
computing
programming
technology
Department: Department of Computer Science
Date Added: 13/12/2017
Duration: 00:19:06

Subscribe

Download

Symbolic Conditioning of Arrays in Probabilistic Programs

Series
International Conference on Functional Programming 2017
Embed
Praveen Narayanan, Indiana University, USA, gives the third presentation in the third panel, Applications, in the ICFP 2017 conference. Co-written by Chung-Chief Shan, Indiana University, USA.
Probabilistic programming systems make machine learning methods modular by automating inference. Recent work by Shan and Ramsey (2017) makes inference itself modular by automating the common component of conditioning. Their work introduces a symbolic program transformation that treats conditioning generally via the measure-theoretic notion of disintegration. This technique, however, is limited to conditioning a single scalar variable. As a step towards tackling realistic machine learning applications, we have extended the disintegration algorithm to symbolically condition arrays in probabilistic programs. The extended algorithm implements lifted disintegration, where repetition is treated symbolically and without unrolling loops. The technique uses a language of index variables for tracking expressions at various array levels. We find that the method works well for arbitrarily-sized arrays of independent random choices, with the conditioning step taking time linear in the number of indices needed to select an element.
Creative Commons Licence
Creative Commons Attribution-Non-Commercial-Share Alike 2.0 UK (BY-NC-SA): England & Wales; https://creativecommons.org/licenses/by-nc-sa/2.0/uk/

Episode Information

Series
International Conference on Functional Programming 2017
People
Praveen Narayanan
Keywords
programming
computing
technology
Department: Department of Computer Science
Date Added: 13/12/2017
Duration: 00:17:13

Subscribe

Download

A Framework for Adaptive Differential Privacy

Series
International Conference on Functional Programming 2017
Embed
Daniel Winograd-Cort University of Pennsylvania, USA, gives the first presentation in the third panel, Applications, in the ICFP 2017 conference. Co-written by Andreas Haeberlen and Aaron Roth, University of Pennsylvania, USA.
Differential privacy is a widely studied theory for analyzing sensitive data with a strong privacy guarantee--any change in an individual's data can have only a small statistical effect on the result--and a growing number of programming languages now support differentially private data analysis. A common shortcoming of these languages is poor support for adaptivity. In practice, a data analyst rarely wants to run just one function over a sensitive database, nor even a predetermined sequence of functions with fixed privacy parameters; rather, she wants to engage in an interaction where, at each step, both the choice of the next function and its privacy parameters are informed by the results of prior functions. Existing languages support this scenario using a simple composition theorem, which often gives rather loose bounds on the actual privacy cost of composite functions, substantially reducing how much computation can be performed within a given privacy budget. The theory of differential privacy includes other theorems with much better bounds, but these have not yet been incorporated into programming languages.

We propose a novel framework for adaptive composition that is elegant, practical, and implementable. It consists of a reformulation based on typed functional programming of the privacy filters of Rogers et al (2016), together with a concrete realization of this framework in the design and implementation of a new language, called Adaptive Fuzz. Adaptive Fuzz transplants the core static type system of Fuzz to the adaptive setting by wrapping the Fuzz typechecker and runtime system in an outer adaptive layer, allowing Fuzz programs to be conveniently constructed and type-checked on the fly. We describe an interpreter for Adaptive Fuzz and report results from two case studies demonstrating its effectiveness for implementing common statistical algorithms over real data sets.
Creative Commons Licence
Creative Commons Attribution-Non-Commercial-Share Alike 2.0 UK (BY-NC-SA): England & Wales; https://creativecommons.org/licenses/by-nc-sa/2.0/uk/

Episode Information

Series
International Conference on Functional Programming 2017
People
Daniel Winograd-Cort
Keywords
computing
programming
technology
Department: Department of Computer Science
Date Added: 13/12/2017
Duration: 00:18:24

Subscribe

Download

Pagination

  • First page
  • Previous page
  • …
  • Page 1802
  • Page 1803
  • Page 1804
  • Page 1805
  • Page 1806
  • Page 1807
  • Page 1808
  • Page 1809
  • Page 1810
  • …
  • Next page
  • Last page

Footer

  • About
  • Accessibility
  • Contribute
  • Copyright
  • Contact
  • Privacy
  • Login
'Oxford Podcasts' X Account @oxfordpodcasts | Upcoming Talks in Oxford | © 2011-2026 The University of Oxford