
Aleksey Nogin- PhD in Computer Science
- Head of Research at Red Balloon Security
Aleksey Nogin
- PhD in Computer Science
- Head of Research at Red Balloon Security
About
43
Publications
6,207
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
450
Citations
Introduction
Dr. Nogin have been a researcher at HRL since 2006, where he has been a PI for DHS S&T funded CloudCOP and Tunable Information Flow projects, DARPA-funded High-Assurance Cyber Military Systems (HACMS) and proactive cyber security (PaCSec) projects, as well as a number of internally funded projects in cyber security and software reliability. Dr. Nogin have also been a part of the HRL’s DARPA-funded SyNAPSE project as the Task Lead for the large-scale simulations of spiking neural networks.
Current institution
Red Balloon Security
Current position
- Head of Research
Publications
Publications (43)
Modeling of large-scale spiking neural models is an important tool in the quest to understand brain function and subsequently create real-world applications. This paper describes a spiking neural network simulator environment called HRL Spiking Simulator (HRLSim). This simulator is suitable for implementation on a cluster of general purpose graphic...
This paper proposes an architecture for a resilient cloud computing infrastructure that provably maintains cloud functionality against persistent successful corruptions of cloud nodes. The architecture is composed of a self-healing software mechanism for the entire cloud, as well as hardware-assisted regeneration of compromised (or faulty) nodes fr...
MetaPRL is the latest system to come out of over twenty five years of research by the Cornell PRL group. While initially created at Cornell, MetaPRL is currently a collaborative project involving several universities in several countries. The MetaPRL system combines the properties of an interactive LCF-style tactic-based proof assistant, a logical...
Modern software codebases are frequently large, heterogeneous, and constantly evolving. The languages and tools for software construction, including code builds and configuration management, have not been well-studied. Developers are often faced with using 1) older tools (like make) that do not scale well, 2) custom build scripts that tend to be fr...
The task of designing and implementing a compiler can be a difficult and error-prone process. In this paper, we present a new approach based on the use of higher-order abstract syntax and term rewriting in a logical framework. All program transformations, from parsing to code generation, are cleanly isolated and specified as term rewrites. This has...
This paper describes a formal model of a “location, heading and speed” waypoint navigation task for an autonomous ground vehicle—that is, a task of navigating the vehicle towards a particular location so that it has the desired heading and speed when in that location. Our novel way of modeling this task makes formal reasoning over controller correc...
Building on previous work by Andr\'e Platzer, we present a formal language for Stochastic Differential Dynamic Logic, and define its semantics, axioms and inference rules. Compared to the previous effort, our account of the Stochastic Differential Dynamic Logic follows closer to and is more compatible with the traditional account of the regular Dif...
We present a concurrent-read exclusive-write buffer system with strong correctness and security properties. Our motivating application for this system is the distribution of sensor values in a multicomponent vehicle-control system, where some components are unverified and possibly malicious, and other components are vehicle-control-critical and mus...
Described is a system, method, and computer program product for ensuring that promises are kept in an anonymous system. A verifiable interaction is established between at least two users. Each user utilizes at least one pseudonym to protect their identity, which is verifiable by a third party. The pseudonyms are stored in an anonymous database cont...
Described is a system for managing a multi-user revision control repository which provides multi-level access control. The present invention describes creating configuration files which describe a set of management states of management areas of a repository. The configuration files describe access control to a set of management areas, and the set o...
A synaptic time-multiplexed (STM) neuromorphic network includes a neural fabric that includes nodes and switches to define inter-nodal connections between selected nodes of the neural fabric. The STM neuromorphic network further includes a neuromorphic controller to form subsets of a set of the inter-nodal connections representing a fully connected...
A method for verifying the performance of a real-time system modeled as a timed automaton. An abstract model of the system is checked against an initial Linear Temporal Logic specification. If a path to an undesirable state is found, the counterexample is validated or invalidated using negative cycle detection. If a negative cycle is detected, opti...
A computer-implemented method includes communicating to a number of agents a first resource negotiation request that includes one or more first parameters each having a corresponding first range of acceptability. The method includes receiving first request responses from each of one or more capable agents each operable to fulfill at least one first...
Scalability and connectivity are two key challenges in designing neuromorphic hardware that can match biological levels. In this paper, we describe a neuromorphic system architecture design that addresses an approach to meet these challenges using traditional complementary metal–oxide–semiconductor (CMOS) hardware. A key requirement in realizing su...
This article explores the topological interpretations of the modal language with two modalities—□, which is interpreted as
the interior operation and ◯ (‘next’) which is interpreted as the pre-image operation for a continuous function. It is known
that the □◯ logic S4C is complete with respect to topological interpretations in ℝn for n≥2, yet it is...
It is well-known that adding reectiv e reasoning can tremendously increase the power of a proof assistant. In order for this theoretical increase of power to become accessible to users in practice, the proof assistant needs to provide a great deal of infrastructure to support reectiv e reasoning. In this paper we explore the problem of creating a p...
In this paper we introduce a new approach to formalizing certain type operations in type theory. Tradi- tionally, many type constructors in type theory are independently axiomatized and the correctness of these axioms is argued semantically. In this paper we introduce a notion of an "image" of a given type under a mapping that captures the spirit o...
We investigate the development of a general-purpose framework for mechanized reasoning about the meta-theory of programming languages. In order to provide a standard, uniform account of a programming language, we propose to define it as a logic in a logical framework, using the same mechanisms for definition, reasoning, and automation that are avai...
The task of designing and implementing a compiler can be a dicult and error-prone process. In this paper, we present a new approach based on the use of higher-order abstract syntax and term rewriting in a logical framework. All program transformations, from parsing to code generation, are cleanly isolated and specified as term rewrites. This has se...
We present a foundation for a computational meta-theory of languages with bindings implemented in a computer-aided formal reasoning environment. Our theory provides the ability to reason abstractly about operators, languages, open-ended languages, classes of languages, etc. The theory is based on the ideas of higher-order abstract syntax, with an a...
We present a foundation for a computational meta-theory of languages with bindings implemented in a computer-aided formal reasoning environment. Our theory provides the ability to reason abstractly about operators, languages, open-ended languages, classes of languages, etc. The theory is based on the ideas of higher-order abstract syntax, with an a...
Theorem provers for higher-order logics often use tactics to implement automated proof search. Often some basic tactics are designed to behave very differently in different contexts. Even in a prover that only supports a fixed base logic, such tactics may need to be updated dynamically as new definitions and theorems are added. In a logical framewo...
this paper we describe an ongoing research effort to address these problems by building a compiler within the MetaPRL formal programming environment [1]. Working with MetaPRL allows us to write the code for our compiler using the same conceptual model that we would use to specify the semantics of a source language or compiler stage. This greatly re...
MetaPRL is the latest system to come out of over twenty ve years of research by the Cornell PRL group. While initially created at Cornell, MetaPRL is currently a collaborative project involving several universities in several countries. The MetaPRL system combines the properties of an interactive LCF-style tactic-based proof assistant, a logical fr...
No proof assistant can be considered complete unless it provides facilities for basic arithmetical reasoning. Indeed, integer theory is a part of the necessary foundation for most of mathematics, logic and computer science. In this paper we present our approach to implementing arithmetic in the intuitionistic type theory of the MetaPRL proof assist...
The task of designing and implementing a compiler can be a difficult and error-prone process. In this paper, we present a new approach based on the use of higher-order abstract syntax and term rewriting in a logical framework. All program transformations, from parsing to code generation, are cleanly isolated and specified as term rewrites. This has...
This document contains a listing of most of the MetaPRL logical theories. It is generated automatically on a daily basis. To get the latest version, go to http://metaprl.org/theories.pdf. To learn more about the MetaPRL system, see http://metaprl.org/
Our goal is to develop a general formalization of abstract algebra suitable for a general reasoning. One of the most common ways to formalize abstract algebra is to make use of a module system to specify an algebra as a theory. However, this approach suers from the fact that modules are usually not first-class objects in the formal system. In this...
Formal methods are successfully used in a wide range of applications — from hardware and software verification to formalizing mathematics and education. However their impact is limited and is very far from realizing the full potential of formal methods. Our investigation of these limitations shows that they can not be avoided by simply fine-tuning...
This paper presents a general sequent schema language that can be used for specifying sequent-style rules for a logical theory. We show how by adding the sequent schema language to a theory we gain an ability to prove new inference rules within the theory itself. We show that the extension
of any such theory with our sequent schema language and wit...
In this paper we introduce a new approach to defining quotient types in type theory. We suggest replacing the existing monolithic rule set by a modular set of rules for a specially chosen set of primitive operations. This modular formalization of quotient types turns out to be very powerful and free of many limitations of the traditional monolithic...
JProver is a first-order intuitionistic theorem prover that creates sequent-style proof objects and can serve as a proof engine in interactive proof assistants with expressive constructive logics. This paper gives a brief overview of JProver's proof technique, the generation of proof objects, and its integration into the Nuprl proof development sys...
In this paper we show how to extend a constructive type theory with a principle that captures the spirit of Markov’s principle from constructive recursive mathematics. Markov’s principle is especially useful for proving termination of specific computations. Allowing a limited form of classical reasoning we get more powerful resulting system which r...
Reection is the ability of a deductive system to internalize aspects of its own structure and thereby reason to some extent about itself. In this paper we present a theoretical framework for exploring reection in type theories that use the Propositions-as-Types" principle, such as Martin-Lof style theories. One of the main results is that it is un...
The NuPRL system [3] was designed for interactive writing of machine–checked constructive proofs and for extracting algorithms from the proofs. The extracted algorithms are guaranteed to be correct1
1Provided that the trusted parts of the NuPRL system work correctly. which makes it possible to use NuPRL as a programming language with built-in verif...
Theorem provers for higher-order logics often use tactics to implement automated proof search. Tactics use a general-purpose metalanguage to implement both general-purpose reasoning
and computationally intensive domain-specific proof procedures. The generality of tactic provers has a performance penalty;
the speed of proof search lags far behind sp...
In order to use Nuprl system as a programming language with builtin verification one has to improve the efficiency of the programs extracted from the Nuprl proofs. In the current paper we consider proofs from the Nuprl automata library. In some of these proofs (pigeon-hole principle, decidability of the state reachability, decidability of the equiv...
We present a new methodology for compiler design, based on the use of a transformation logic defined within an ex-isting general-purpose logical framework. We demonstrate how this methodology can be used to address several cen-tral issues in compiler design and implementation: ease of implementation, extensibility, compositionality, and trust.
We outline a new methodology for compiler design, based on the use of a transformation logic defined within an existing general- purpose logical framework. We discuss how this methodology can be used to address several central issues in compiler design and implementation: ease of implementation, extensibility, compositionality, and trust. We show h...