Marten Lohstroh

Marten Lohstroh
University of California, Berkeley | UCB · Department of Electrical Engineering and Computer Sciences

PhD

About

30
Publications
10,741
Reads
How we measure 'reads'
A 'read' is counted each time someone views a publication summary (such as the title, abstract, and list of authors), clicks on a figure, or views or downloads the full-text. Learn more
370
Citations
Introduction
Marten Lohstroh currently works at the Department of Electrical Engineering and Computer Sciences, University of California, Berkeley. Marten does research in Theory of Computation and Programming Languages. His current work focuses on IoT Abstractions and Composability.
Additional affiliations
December 2020 - present
University of California, Berkeley
Position
  • PostDoc Position
Description
  • Continued work on reactors and Lingua Franca.
August 2014 - December 2020
University of California, Berkeley
Position
  • PhD Student
Description
  • Thesis title: "Reactors: A Deterministic Model of Concurrent Computation for Reactive Systems" This thesis presents the reactor model, in which parallel and distributed computation is deterministic by default, and timing is a semantic property of a program.
Education
August 2014 - December 2020
University of California, Berkeley
Field of study
  • Computer Science

Publications

Publications (30)
Preprint
Full-text available
Asynchronous frameworks for distributed embedded systems, like ROS and MQTT, are increasingly used in safety-critical applications such as autonomous driving, where the cost of unintended behavior is high. The coordination mechanism between the components in these frameworks, however, gives rise to nondeterminism, where factors such as communicatio...
Chapter
We argue that the utility of time as a semantic property of software is not limited to the domain of real-time systems. This paper outlines four concurrent design patterns: alignment, precedence, simultaneity, and consistency, all of which are relevant to general-purpose software applications. We show that a semantics of logical time provides a nat...
Preprint
Full-text available
In distributed applications, Brewer's CAP theorem tells us that when networks become partitioned, there is a tradeoff between consistency and availability. Consistency is agreement on the values of shared variables across a system, and availability is the ability to respond to reads and writes accessing those shared variables. We quantify these con...
Article
Full-text available
Many programming languages and programming frameworks focus on parallel and distributed computing. Several frameworks are based on actors, which provide a more disciplined model for concurrency than threads. The interactions between actors, however, if not constrained, admit nondeterminism. As a consequence, actor programs may exhibit unintended be...
Thesis
Full-text available
Actors have become widespread in programming languages and programming frameworks focused on parallel and distributed computing. While actors provide a more disciplined model for concurrency than threads, their interactions, if not constrained, admit nondeterminism. As a consequence, actor programs may exhibit unintended behaviors and are less amen...
Article
Full-text available
Programmable Logic Controllers (PLCs) are an established platform, widely used throughout industrial automation but rather poorly understood among researchers. This paper gives an overview of the state of the practice, explaining why this settled technology persists throughout industry and presenting a critical analysis of the strengths and weaknes...
Conference Paper
Full-text available
AUTOSAR Adaptive Platform is an emerging industry standard that tackles the challenges of modern automotive software design, but does not provide adequate mechanisms to enforce deterministic execution. This poses profound challenges to testing and maintenance of the application software, which is particularly problematic for safety-critical applica...
Chapter
This paper describes a component-based concurrent model of computation for reactive systems. The components in this model, featuring ports and hierarchy, are called reactors. The model leverages a semantic notion of time, an event scheduler, and a synchronous-reactive style of communication to achieve determinism. Reactors enable a programming mode...
Conference Paper
Full-text available
This paper describes an implementation in progress of a C-based framework for execution of deterministic, concurrent, real-time software components called "reactors." The component interfaces and their interconnections are given in a coordination language called Lingua Franca, while the work done by the components is given in ordinary C. The imple...
Preprint
Full-text available
AUTOSAR Adaptive Platform is an emerging industry standard that tackles the challenges of modern automotive software design, but does not provide adequate mechanisms to enforce deterministic execution. This poses profound challenges to testing and maintenance of the application software, which is particularly problematic for safety-critical applica...
Conference Paper
Full-text available
We discuss ongoing work towards a metalanguage , execution model, and compiler tool chain that promotes determinism and grants first-class citizenship to the timing aspects of computation.
Conference Paper
Actors have become widespread in programming languages and programming frameworks focused on parallel and distributed computing. While actors provide a more disciplined model for concurrency than threads, their interactions, if not constrained, admit nondeterminism. As a consequence, actor programs may exhibit unintended behaviors and are less amen...
Preprint
Programming time-critical systems is notoriously difficult. In this paper we propose an actor-oriented programming model with a semantic notion of time and a deterministic coordination semantics based on discrete events to exercise precise control over both the computational and timing aspects of the system behavior.
Conference Paper
Full-text available
Programming time-critical systems is notoriously difficult. In this paper we propose an actor-oriented programming model with a semantic notion of time and a deterministic coordination semantics based on discrete events to exercise precise control over both the computational and timing aspects of the system behavior.
Article
Full-text available
Model-based design methodologies are commonly used in industry for the development of complex cyber-physical systems (CPSs). There are many different languages, tools, and formalisms for model-based design, each with its strengths and weaknesses. Instead of accepting some weaknesses of a particular tool, an alternative is to embrace heterogeneity,...
Article
Full-text available
The Internet of Things (IoT) leverages internet technology in cyber-physical systems (CPSs), but the protocols and principles of the Internet were designed for interacting with information systems, not cyber-physical systems. For one, timeliness is not a factor in any widespread internet technology, with Quality-of-Service (QoS) features having bee...
Preprint
Full-text available
This paper describes a component-based concurrent model of computation for reactive systems. The components in this model, featuring ports and hierarchy, are called reactors. The model leverages a semantic notion of time, an event scheduler, and a synchronous-reactive style of communication to achieve determinism. Reactors enable a programming mode...
Preprint
Full-text available
We propose a measure and a metric on the sets of infinite traces generated by a set of atomic propositions. To compute these quantities, we first map properties to subsets of the real numbers and then take the Lebesgue measure of the resulting sets. We analyze how this measure is computed for Linear Temporal Logic (LTL) formulas. An implementation...
Article
Full-text available
In this paper, we describe a component-based software architecture for the Internet of Things in which proxies for Things and services that we call "accessors" interact with one another under a concurrent, time-stamped, discrete-event (DE) semantics. These proxies are analogous to web pages, which proxy a cloud-based service such as a bank, but ins...
Article
Full-text available
Data security, which is concerned with the prevention of unauthorized access to computers, databases, and websites, helps protect digital privacy and ensure data integrity. It is extremely difficult, however, to make security watertight, and security breaches are not uncommon. The consequences of stolen credentials go well beyond the leakage of oth...
Conference Paper
Full-text available
This paper introduces contextual callbacks, which allow environments to authenticate themselves to nearby devices and advertise local services in response to the reception of radio-broadcast announcements that are emitted by mobile devices.
Conference Paper
Full-text available
This paper presents FIDE, an Integrated Development Environment (IDE) for building applications using Functional Mock-up Units (FMUs) that implement the standardized Functional Mock-up Interface (FMI). FIDE is based on the actororiented Ptolemy II framework and leverages its graphical user interface, simulation engine, and code generation feature t...
Article
Full-text available
Swarmlets are applications and services that leverage networked sensors and actuators with cloud services and mobile devices. This article offers a way to construct swarmlets by composing "accessors,"' which are wrappers for sensors, actuators, and services, that export an actor interface. Actor semantics provides ways to compose accessors with dis...
Article
Full-text available
This paper uses interface automata to develop an interface theory for a component architecture for Internet of Things (IoT) applications. Specifically, it examines an architecture for IoT applications where so-called “accessors” provide an actor-oriented proxy for devices (“things”) and services. Following the principles of actor models, an accesso...

Network

Cited By

Projects

Projects (3)
Project
The development of a meta-language, execution model, and compiler tool chain that promotes determinism and grants first-class citizenship to the timing aspects of computation.