Jonathan Bowen

Jonathan Bowen

Oxford, England, United Kingdom
4K followers 500+ connections

About

Jonathan Bowen is Chairman of Museophile Limited, a consultancy company, working in the…

Articles by Jonathan

Activity

Join now to see all activity

Experience

  • Ministry of Education – UAE Graphic

    Ministry of Education – UAE

    Abu Dhabi, Abu Dhabi Emirate, United Arab Emirates

  • -

    London, United Kingdom

  • -

    Oxford, England, United Kingdom

  • -

    Oxford, England, United Kingdom

  • -

    London, England, United Kingdom

  • -

    London, United Kingdom

  • -

    London, United Kingdom

  • -

    London, United Kingdom

  • -

    London, England, United Kingdom

  • -

    Beibei District, Chongqing, China

  • -

    Birmingham, United Kingdom

  • -

    United Kingdom

  • -

    London, United Kingdom

  • -

    Shanghai City, China

  • -

    Greater New York City Area

  • -

    London, United Kingdom

  • -

    London, England, United Kingdom

  • -

    United Kingdom

  • -

    London, England, United Kingdom

  • -

    Abu Dhabi, United Arab Emirates

  • -

    Bath, United Kingdom

  • -

    London, England, United Kingdom

  • -

    London, England, United Kingdom

  • -

    Southwark, England, United Kingdom

  • -

    Reading, England, United Kingdom

  • -

    Macao

  • -

    Oxford, England, United Kingdom

  • -

    London, England, United Kingdom

  • -

    Mountain View, California, USA

  • -

    London and Colchester, United Kingdom

  • -

    St Albans, United Kingdom

Education

  • University of Oxford Graphic

    University of Oxford

    -

    Activities and Societies: University College Players (Treasurer). Robert Boyle Society. Oxford University Broadcasting Society (Technical Director). Oxford University Orienteering Club.

    BA Oxon, 1977. MA Oxon, 1981.

  • -

    Activities and Societies: Art, orienteering

    Mathematics, Further Mathematics, Physics, Art

  • -

    Primary school in Oxford, England.

Volunteer Experience

Publications

  • Empirical Patterns in Google Scholar Citation Counts

    Proc. Cyberpatterns 2014, April 7 2014, Oxford, IEEE CS Digital Library

    Scholarly impact may be metricized using an author’s total number of citations as a stand-in for real worth, but this measure varies in applicability between disciplines. The detail of the number of citations per publication is nowadays mapped in much more detail on the Web, exposing certain empirical patterns. This paper explores those patterns, using the citation data from Google Scholar for a number of authors.

    Other authors
    See publication
  • Certifying Machine Code Safe from Hardware Aliasing: RISC is Not Necessarily Risky

    Proc. OpenCert 2013 at SEFM 2013, Springer LNCS 8368

    Sometimes machine code turns out to be a better target for verification than source code. RISC machine code is especially advantaged with respect to source code in this regard because it has only two instructions that access memory. That architecture forms the basis here for an inference system that can prove machine code safe against ‘hardware aliasing’, an effect that occurs in embedded systems. There are programming memes that ensure code is safe from hardware aliasing, but we want to…

    Sometimes machine code turns out to be a better target for verification than source code. RISC machine code is especially advantaged with respect to source code in this regard because it has only two instructions that access memory. That architecture forms the basis here for an inference system that can prove machine code safe against ‘hardware aliasing’, an effect that occurs in embedded systems. There are programming memes that ensure code is safe from hardware aliasing, but we want to certify that a given machine code is provably safe.

    Other authors
    See publication
  • Certifying Machine Code Safe from Hardware Aliasing: RISC is Not Necessarily Risky

    Proc. OpenCert 2013 at SEFM 2013, Springer LNCS 8368

    Sometimes machine code turns out to be a better target for verification than source code. RISC machine code is especially advantaged with respect to source code in this regard because it has only two instructions that access memory. That architecture forms the basis here for an inference system that can prove machine code safe against ‘hardware aliasing’, an effect that occurs in embedded systems. There are programming memes that ensure code is safe from hardware aliasing, but we want to…

    Sometimes machine code turns out to be a better target for verification than source code. RISC machine code is especially advantaged with respect to source code in this regard because it has only two instructions that access memory. That architecture forms the basis here for an inference system that can prove machine code safe against ‘hardware aliasing’, an effect that occurs in embedded systems. There are programming memes that ensure code is safe from hardware aliasing, but we want to certify that a given machine code is provably safe.

    Other authors
    See publication
  • Museums and Technology: Being Inclusive Helps Accessibility for All.

    Curator: The Museum Journal

    Abstract

    This paper explores accessibility issues for museums in the context of growing dependence on technology. The background of these issues is described, along with the evolution from physical access to digital access—for example, via the Web—and, increasingly, mobile technology. The authors are people with different disabilities and they describe personal experiences, giving a sense of the various barriers and benefits that are involved. The aim of this paper is to provide museums…

    Abstract

    This paper explores accessibility issues for museums in the context of growing dependence on technology. The background of these issues is described, along with the evolution from physical access to digital access—for example, via the Web—and, increasingly, mobile technology. The authors are people with different disabilities and they describe personal experiences, giving a sense of the various barriers and benefits that are involved. The aim of this paper is to provide museums with a disabled person's point of view, which could help in inspiring improvements for the future. Often the task is one of understanding as much as financial constraints, since many solutions can be implemented at little additional cost.

    Other authors
    See publication
  • Museums and Technology: Being Inclusive Helps Accessibility for All.

    Curator: The Museum Journal

    Abstract

    This paper explores accessibility issues for museums in the context of growing dependence on technology. The background of these issues is described, along with the evolution from physical access to digital access—for example, via the Web—and, increasingly, mobile technology. The authors are people with different disabilities and they describe personal experiences, giving a sense of the various barriers and benefits that are involved. The aim of this paper is to provide museums…

    Abstract

    This paper explores accessibility issues for museums in the context of growing dependence on technology. The background of these issues is described, along with the evolution from physical access to digital access—for example, via the Web—and, increasingly, mobile technology. The authors are people with different disabilities and they describe personal experiences, giving a sense of the various barriers and benefits that are involved. The aim of this paper is to provide museums with a disabled person's point of view, which could help in inspiring improvements for the future. Often the task is one of understanding as much as financial constraints, since many solutions can be implemented at little additional cost.

    Other authors
    See publication
  • Museums and Technology: Being Inclusive Helps Accessibility for All.

    Curator: The Museum Journal

    Abstract

    This paper explores accessibility issues for museums in the context of growing dependence on technology. The background of these issues is described, along with the evolution from physical access to digital access—for example, via the Web—and, increasingly, mobile technology. The authors are people with different disabilities and they describe personal experiences, giving a sense of the various barriers and benefits that are involved. The aim of this paper is to provide museums…

    Abstract

    This paper explores accessibility issues for museums in the context of growing dependence on technology. The background of these issues is described, along with the evolution from physical access to digital access—for example, via the Web—and, increasingly, mobile technology. The authors are people with different disabilities and they describe personal experiences, giving a sense of the various barriers and benefits that are involved. The aim of this paper is to provide museums with a disabled person's point of view, which could help in inspiring improvements for the future. Often the task is one of understanding as much as financial constraints, since many solutions can be implemented at little additional cost.

    Other authors
    See publication
  • Museums and Technology: Being Inclusive Helps Accessibility for All.

    Curator: The Museum Journal

    Abstract

    This paper explores accessibility issues for museums in the context of growing dependence on technology. The background of these issues is described, along with the evolution from physical access to digital access—for example, via the Web—and, increasingly, mobile technology. The authors are people with different disabilities and they describe personal experiences, giving a sense of the various barriers and benefits that are involved. The aim of this paper is to provide museums…

    Abstract

    This paper explores accessibility issues for museums in the context of growing dependence on technology. The background of these issues is described, along with the evolution from physical access to digital access—for example, via the Web—and, increasingly, mobile technology. The authors are people with different disabilities and they describe personal experiences, giving a sense of the various barriers and benefits that are involved. The aim of this paper is to provide museums with a disabled person's point of view, which could help in inspiring improvements for the future. Often the task is one of understanding as much as financial constraints, since many solutions can be implemented at little additional cost.

    Other authors
    See publication
  • A fully homomorphic crypto-processor design: correctness of a secret computer

    Proc ESSOS'13, Springer LNCS 7781, Heidelberg.

    A KPU is a replacement for a standard CPU that natively runs encrypted machine code on encrypted data in registers and memory -- a `general purpose crypto-processor', in other words. Its computations are opaque to an observer with physical access to the processor but remain meaningful to the owner of the computation. In theory, a KPU can be run in simulation
    and remain as secure (or otherwise) as in hardware. Any block cipher with a block-size of about a word is compatible with this…

    A KPU is a replacement for a standard CPU that natively runs encrypted machine code on encrypted data in registers and memory -- a `general purpose crypto-processor', in other words. Its computations are opaque to an observer with physical access to the processor but remain meaningful to the owner of the computation. In theory, a KPU can be run in simulation
    and remain as secure (or otherwise) as in hardware. Any block cipher with a block-size of about a word is compatible with this developing technology, the long-term aim of which is to make it safe to entrust data-oriented computation to a remote environment.

    Hardware is arranged in a KPU to make the chosen cipher behave as a mathematical
    homomorphism with respect to computer arithmetic. We describe the architecture formally here and prove that `type-safe' programs run correctly when encrypted.

    Other authors
    See publication
  • Towards a working fully homomorphic crypto-processor: Practice and the secret computer

    Springer

    A KPU is a replacement for a standard RISC processor that natively runs encrypted machine code on encrypted data in registers and memory – a ‘general-purpose crypto-processor’, in other words. It works because the processor’s arithmetic is customized to make the chosen encryption into a mathematical homomorphism, resulting in what is called a ‘fully-homomorphic encryption’ design. This paper discusses the problems and solutions associated with implementing a working KPU in personal…

    A KPU is a replacement for a standard RISC processor that natively runs encrypted machine code on encrypted data in registers and memory – a ‘general-purpose crypto-processor’, in other words. It works because the processor’s arithmetic is customized to make the chosen encryption into a mathematical homomorphism, resulting in what is called a ‘fully-homomorphic encryption’ design. This paper discusses the problems and solutions associated with implementing a working KPU in personal computer-sized hardware.

    [Preprint of what will appear at Intl. Symp. on Engineering Secure Software and Systems (ESSoS '14), Feb 26 2014, Munich].

    Other authors
    See publication
  • Typed Assembler for a RISC Crypto-Processor

    Proc. ESSoS'12, LNCS 7159, Springer, Heidelberg.

    Our general purpose crypto-processor runs RISC machine code in an encrypted environment, reading encrypted inputs and generating encrypted outputs while maintaining data encrypted in memory. Its intended use is secure remote processing. However, program addresses are processed unencrypted, resulting in a mix of encrypted and unencrypted data in memory and registers at any time. An aspect of compiling for it is typing the assembler code to make sure that those instructions that expect…

    Our general purpose crypto-processor runs RISC machine code in an encrypted environment, reading encrypted inputs and generating encrypted outputs while maintaining data encrypted in memory. Its intended use is secure remote processing. However, program addresses are processed unencrypted, resulting in a mix of encrypted and unencrypted data in memory and registers at any time. An aspect of compiling for it is typing the assembler code to make sure that those instructions that expect encrypted data always get encrypted data at execution time, and those that expect unencrypted data get unencrypted data. A type inference system is specified here and transformed into an executable typing algorithm, such that a type-checked assembler program is guaranteed type-safe.

    Other authors
    See publication
  • Formal Methods: State of the Art and New Directions

    Springer

    The last decade has witnessed a modest but sustained increase in researching and applying formal methods. A number of well cited success stories are now available and provide strong evidence that formal methods can be effective and deployed in industrial-scale applications. Through fundamental contributions from leading researchers, this book provides further evidence of the use of formal methods in the areas of requirements, design, modelling and implementation, verification and validation…

    The last decade has witnessed a modest but sustained increase in researching and applying formal methods. A number of well cited success stories are now available and provide strong evidence that formal methods can be effective and deployed in industrial-scale applications. Through fundamental contributions from leading researchers, this book provides further evidence of the use of formal methods in the areas of requirements, design, modelling and implementation, verification and validation. The self-contained chapters are views from experts in these areas, providing readers with rich background information and a diverse breadth of specialist material.This authoritative collection of views provides a snapshot of the field and will be of considerable interest to researchers and professionals seeking a perspective on fundamental underpinnings of formal methods and current hot topics in the field.

    Other authors
    See publication
  • A PREttier Compiler-Compiler: Generating Higher-Order Parsers In C

    Software: Practice and Experience, vol 25(11)/Wiley

    Top-down (LL) context-sensitive parsers with integrated synthesis and use of attributes are easy to express in functional programming languages, but the elegant functional programming model can also serve as an exact prototype for a more efficient implementation of the technology in ANSI C. The result is a compiler-compiler that takes unlimited lookahead and backtracking, the extended BNF notation, and parameterized grammars with (higher order) meta-parameters to the world of C programming…

    Top-down (LL) context-sensitive parsers with integrated synthesis and use of attributes are easy to express in functional programming languages, but the elegant functional programming model can also serve as an exact prototype for a more efficient implementation of the technology in ANSI C. The result is a compiler-compiler that takes unlimited lookahead and backtracking, the extended BNF notation, and parameterized grammars with (higher order) meta-parameters to the world of C programming. This article reports on the utility in question three years after public release. Precc generates standard ANSI C and is `plug compatible' with lex-generated lexical analyzers prepared for the Unix yacc compiler-compiler. In contrast to yacc, however, the generated code is modular, which allows parts of scripts to be compiled separately and linked together incrementally. The constructed code is relatively efficient, as is demonstrated by the example OCCAM parser treated in depth here, but the main advantages we claim are ease of use, separation of specification and implementation concerns, and maintainability.

    Other authors
    See publication
  • Decompilation: the Enumeration of Types and Grammars

    ACM Transactions on Programming Languages and Systems (TOPLAS), vol. 16(5)/ACM

    While a compiler produces low-level object code from high-level source code, a decompiler produces high-level code from low-level code and has applications in the testing and validation of safety-critical software. Decompiling an object code provides an independent demonstration of correctness that is hard to better for industrial purposes. (An alternative is to prove the compiler correct.) But although compiler compilers are in common use in the software industry, a decompiler compiler is…

    While a compiler produces low-level object code from high-level source code, a decompiler produces high-level code from low-level code and has applications in the testing and validation of safety-critical software. Decompiling an object code provides an independent demonstration of correctness that is hard to better for industrial purposes. (An alternative is to prove the compiler correct.) But although compiler compilers are in common use in the software industry, a decompiler compiler is much more unusual.

    It turns out that a data type specification that represents a programming language grammar can be remolded into a functional program that enumerates all the abstract syntax trees of the grammar. This observation is the springboard for a general method for compiling decompilers from the specifications of (non-optimizing) compilers.

    This paper deals with methods and theory, together with an application of the technique. The correctness of a decompiler generated from a simple \OCCAM-like compiler specification is demonstrated. The basic problem of enumerating the syntax trees of grammars, and then stopping, is shown to have no recursive solution, but methods of abstract interpretation can be used to guarantee the adequacy and completeness of our technique in practical instances, including the decompiler for the language presented here.

    Other authors
    See publication
  • The Alien's Guide to Oxford

    Oxford University Computing Laboratory

    Oxford University Computer Laboratory, Programming Research Group `Technical Report' PRG-TR-12-90.

    Officially, this guide gives travel information for Oxford, UK, being particularly written for short-term visitors to the Programming Research Group. It was originally written tongue-in-cheek for two collaborative ESPRIT projects, so the humor was targeted at a European/research project-y and peripatetic audience. But it has proved to be of far greater general appeal over the years…

    Oxford University Computer Laboratory, Programming Research Group `Technical Report' PRG-TR-12-90.

    Officially, this guide gives travel information for Oxford, UK, being particularly written for short-term visitors to the Programming Research Group. It was originally written tongue-in-cheek for two collaborative ESPRIT projects, so the humor was targeted at a European/research project-y and peripatetic audience. But it has proved to be of far greater general appeal over the years, particularly to tourists attempting to unravel the Oxford mystique (although the authors are still trying to do so themselves!).

    Other authors
    See publication

Courses

  • Lecturing

    -

Organizations

  • British Computer Society

    Fellow, Chair of BCS-FACS

    - Present
  • Royal Society of Arts

    Fellow

    - Present

Recommendations received

More activity by Jonathan

View Jonathan’s full profile

  • See who you know in common
  • Get introduced
  • Contact Jonathan directly
Join to view full profile

Other similar profiles

Explore collaborative articles

We’re unlocking community knowledge in a new way. Experts add insights directly into each article, started with the help of AI.

Explore More

Others named Jonathan Bowen in United Kingdom

Add new skills with these courses