en.unionpedia.org

Runtime verification, the Glossary

Index Runtime verification

Runtime verification is a computing system analysis and execution approach based on extracting information from a running system and using it to detect and possibly react to observed behaviors satisfying or violating certain properties.[1]

Table of Contents

  1. 30 relations: Aspect-oriented programming, AspectJ, Automaton, Büchi automaton, Context-free language, Deadlock, Dynamic program analysis, Fault tolerance, Finite-state machine, Formal language, Formal specification, Formal verification, Grigore Roșu, Java (programming language), Linear temporal logic, Linear temporal logic to Büchi automaton, Log analysis, Memory safety, Model checking, Policy monitoring, Profiling (computer programming), Program transformation, Race condition, Regular expression, Runtime application self-protection, Runtime error detection, Software testing, Static program analysis, Type system, Vector clock.

Aspect-oriented programming

In computing, aspect-oriented programming (AOP) is a programming paradigm that aims to increase modularity by allowing the separation of cross-cutting concerns.

See Runtime verification and Aspect-oriented programming

AspectJ

AspectJ is an aspect-oriented programming (AOP) extension for the Java programming language, created at PARC.

See Runtime verification and AspectJ

Automaton

An automaton (automata or automatons) is a relatively self-operating machine, or control mechanism designed to automatically follow a sequence of operations, or respond to predetermined instructions.

See Runtime verification and Automaton

Büchi automaton

In computer science and automata theory, a deterministic Büchi automaton is a theoretical machine which either accepts or rejects infinite inputs.

See Runtime verification and Büchi automaton

Context-free language

In formal language theory, a context-free language (CFL), also called a Chomsky type-2 language, is a language generated by a context-free grammar (CFG).

See Runtime verification and Context-free language

Deadlock

In concurrent computing, deadlock is any situation in which no member of some group of entities can proceed because each waits for another member, including itself, to take action, such as sending a message or, more commonly, releasing a lock.

See Runtime verification and Deadlock

Dynamic program analysis

Dynamic program analysis is the act of analyzing software that involves executing a program as opposed to static program analysis, which does not execute it.

See Runtime verification and Dynamic program analysis

Fault tolerance

Fault tolerance is the ability of a system to maintain proper operation despite failures or faults in one or more of its components.

See Runtime verification and Fault tolerance

Finite-state machine

A finite-state machine (FSM) or finite-state automaton (FSA, plural: automata), finite automaton, or simply a state machine, is a mathematical model of computation.

See Runtime verification and Finite-state machine

Formal language

In logic, mathematics, computer science, and linguistics, a formal language consists of words whose letters are taken from an alphabet and are well-formed according to a specific set of rules called a formal grammar.

See Runtime verification and Formal language

Formal specification

In computer science, formal specifications are mathematically based techniques whose purpose are to help with the implementation of systems and software. Runtime verification and formal specification are formal methods.

See Runtime verification and Formal specification

Formal verification

In the context of hardware and software systems, formal verification is the act of proving or disproving the correctness of a system with respect to a certain formal specification or property, using formal methods of mathematics. Runtime verification and formal verification are formal methods and logic in computer science.

See Runtime verification and Formal verification

Grigore Roșu

Grigore Roșu (born December 12, 1971) is a computer science professor at the University of Illinois at Urbana-Champaign and a researcher in the Information Trust Institute.

See Runtime verification and Grigore Roșu

Java (programming language)

Java is a high-level, class-based, object-oriented programming language that is designed to have as few implementation dependencies as possible.

See Runtime verification and Java (programming language)

Linear temporal logic

In logic, linear temporal logic or linear-time temporal logic (LTL) is a modal temporal logic with modalities referring to time.

See Runtime verification and Linear temporal logic

Linear temporal logic to Büchi automaton

In formal verification, finite state model checking needs to find a Büchi automaton (BA) equivalent to a given linear temporal logic (LTL) formula, i.e., such that the LTL formula and the BA recognize the same ω-language.

See Runtime verification and Linear temporal logic to Büchi automaton

Log analysis

In computer log management and intelligence, log analysis (or system and network log analysis) is an art and science seeking to make sense of computer-generated records (also called log or audit trail records).

See Runtime verification and Log analysis

Memory safety

Memory safety is the state of being protected from various software bugs and security vulnerabilities when dealing with memory access, such as buffer overflows and dangling pointers.

See Runtime verification and Memory safety

Model checking

In computer science, model checking or property checking is a method for checking whether a finite-state model of a system meets a given specification (also known as correctness). Runtime verification and model checking are formal methods and logic in computer science.

See Runtime verification and Model checking

Policy monitoring

Policy monitoring comes a range of activities describing and analyzing the development and implementation of policies, identifying potential gaps in the process, outlining areas for improvement, and holding policy implementers accountable for their activities.

See Runtime verification and Policy monitoring

Profiling (computer programming)

In software engineering, profiling ("program profiling", "software profiling") is a form of dynamic program analysis that measures, for example, the space (memory) or time complexity of a program, the usage of particular instructions, or the frequency and duration of function calls.

See Runtime verification and Profiling (computer programming)

Program transformation

A program transformation is any operation that takes a computer program and generates another program.

See Runtime verification and Program transformation

Race condition

A race condition or race hazard is the condition of an electronics, software, or other system where the system's substantive behavior is dependent on the sequence or timing of other uncontrollable events, leading to unexpected or inconsistent results. Runtime verification and race condition are logic in computer science.

See Runtime verification and Race condition

Regular expression

A regular expression (shortened as regex or regexp), sometimes referred to as rational expression, is a sequence of characters that specifies a match pattern in text.

See Runtime verification and Regular expression

Runtime application self-protection

Runtime application self-protection (RASP) is a security technology that uses runtime instrumentation to detect and block computer attacks by taking advantage of information from inside the running software.

See Runtime verification and Runtime application self-protection

Runtime error detection

Runtime error detection is a software verification method that analyzes a software application as it executes and reports defects that are detected during that execution.

See Runtime verification and Runtime error detection

Software testing

Software testing is the act of checking whether software satisfies expectations.

See Runtime verification and Software testing

Static program analysis

In computer science, static program analysis (also known as static analysis or static simulation) is the analysis of computer programs performed without executing them, in contrast with dynamic program analysis, which is performed on programs during their execution in the integrated environment.

See Runtime verification and Static program analysis

Type system

In computer programming, a type system is a logical system comprising a set of rules that assigns a property called a ''type'' (for example, integer, floating point, string) to every term (a word, phrase, or other set of symbols).

See Runtime verification and Type system

Vector clock

A vector clock is a data structure used for determining the partial ordering of events in a distributed system and detecting causality violations.

See Runtime verification and Vector clock

References

[1] https://en.wikipedia.org/wiki/Runtime_verification

Also known as Runtime validation.