Network


Latest external collaboration on country level. Dive into details by clicking on the dots.

Hotspot


Dive into the research topics where Peter Pepper is active.

Publication


Featured researches published by Peter Pepper.


Acta Informatica | 1983

On hierarchies of abstract data types

Martin Wirsing; Peter Pepper; Helmut Partsch; Walter Dosch; Manfred Broy

SummaryHierarchical abstract data types are algebraic specifications of computation structures where certain sorts, function symbols, and axioms are designated as being primitive. On hierarchical abstract data types additional structure is imposed. An algebraic specification is thus decomposed into several well-separated levels, such that both the understanding and the independent implementation of the levels is supported. This paper provides both model-theoretic and deduction-oriented conditions guaranteeing the soundness of a hierarchical specification. Furthermore necessary and sufficient conditions for the existence of initial and terminal models are investigated, and their close connection to the soundness of a hierarchy is demonstrated. In order to provide freedom and flexibility for specifications a wide class of axioms — namely universal-existential formulas — are admitted.


IEEE Transactions on Software Engineering | 1981

Program Development as a Formal Activity

Manfred Broy; Peter Pepper

A methodology of program development by transformations is outlined. In particular, ways of representing the transformation rules are discussed, and the relationship between notions of their correctness and the semantic definition of programming languages is studied. How transformation techniques are complemented by the use of abstract data types and assertions is described. In the resulting calculus of transformations, the single rules not only represent design or optimization techniques, but they also incorporate verification principles. To illustrate this approach, the Warshall algorithm is developed by successive applications of transformations.


international colloquium on automata, languages and programming | 1979

Existential Quantifiers in Abstract Data Types

Manfred Broy; Walter Dosch; Helmuth Partsch; Peter Pepper; Martin Wirsing

Hierarchies of abstract data types are specified by axioms which are positive formulas consisting of universally and existentially quantified disjunctions and conjunctions of equations. Necessary and sufficient conditions for the existence of terminal algebras are investigated. Furthermore, some advantages of disjunctions and existential quantifiers within the laws are discussed and the usefulness of terminal algebras is demonstrated by a few examples.


Science of Computer Programming | 1981

Programming in a wide spectrum language: a collection of examples

Friedrich L. Bauer; Manfred Broy; Walter Dosch; Rupert Gnatz; Bernd Krieg-Brückner; Alfred Laut; M. Luckmann; Thomas Matzner; Bernhard Möller; Helmuth Partsch; Peter Pepper; Klaus Samelson; Ralf Steinbrüggen; Martin Wirsing; Hans Wössner

Abstract The paper exemplifies programming in a wide spectrum language by presenting styles which range from non-operative specifications—using abstract types and tools from predicate logic as well as set theory—over recursive functions, to procedural program with variables. Besides a number of basic types, we develop an interpreter for parts of the language itself, an algorithm for applying transformation rules to program representations, a text editor, and a simulation of Backus functional programming language.


Program Construction, International Summer Schoo | 1978

A Study on Transformational Semantics

Peter Pepper

The semantics of a programming language is specified — relative to a kernel language — by reducing certain constructs of the language to more elementary ones by means of definitional transformations. Parallels to the algebraic specification of abstract data types are discussed. This approach of transformational semantics is illustrated by explaining program variables in terms of purely applicative constructs.


ACM Transactions on Programming Languages and Systems | 1982

Combining Algebraic and Algorithmic Reasoning: An Approach to the Schorr-Waite Algorithm

Manfred Broy; Peter Pepper

The basic idea of the Schorr-Waite graph-marking algorithm can be precisely formulated, explained, and verified in a completely applicative (functional) programming style. Graphs are specified algebraically as objects of an abstract data type. When formulating recursive programs over such types, one can combine algebraic and algorithmic reasoning: An applicative depth-first-search algorithm is derived from a mathematical specification by applying properties of reflexive, transitive closures of relations. This program is then transformed in several steps into a fmal procedural version with the help of both algebraic properties of graphs and algorithmic properties reflected in the recursion structure of the program.


Program Construction, International Summer Schoo | 1978

Systematics of Transformation Rules

Friedrich L. Bauer; Manfred Broy; Helmuth Partsch; Peter Pepper; Hans Wössner

There are essentially two ways to attack the problem of the correctness of program transformations: transformation rules can be given as axioms — thus determining (parts of) the semantics of the language — or they can be verified with respect to a particular definition of the semantics. This classification is taken here as a guide-line for a systematic survey of transformation rules.


Proceedings of the Fourth 'Colloque International sur la Programmation' on International Symposium on Programming | 1980

On Relations Between Programs

Manfred Broy; Peter Pepper; Martin Wirsing

Equivalence relations between programs are strongly connected to the formal definition of the semantics of programming languages. In addition they provide a basis for the formal justification of the development of programs by transformations. Besides equivalences there are various other relations on programs and computational structures, which help to get a better understanding of both programming languages and the programming activity. In particular, the study of relations between nondeterministic programs allows to compare different concepts of nondeterminism.


Program Construction, International Summer Schoo | 1978

Special Transformation Techniques

Hans Wössner; Peter Pepper; Helmuth Partsch; Friedrich L. Bauer

There are certain simple types of recursion allowing to be transformed immediately into usual iterative language constructs. On the other hand there are also routines which can only be implemented in full generality by using a stack mechanism. One of the great advantages of methods for program development is the individual and thus adequate treatment of routines — especially of recursive ones — by means of a repertory of transformation techniques. Some of the techniques based on the fundamental method of function inversion are presented in this paper.


Archive | 1984

Inferential Techniques for Program Development

Peter Pepper

The principles and potentials of transformational program development are outlined by a few simple examples. It is demonstrated that this programming technique may be used to produce software for various kinds of hardware architectures. Based on observations made with these examples, the theoretical fundamentals of a “transformational calculus” are developed. The considerations aim at the clarification of notions such as “transformation rule”, “applicability condition”, or “axiomatic rule”. Some brief comments on transformation systems and rule bases round off the discussion.

Collaboration


Dive into the Peter Pepper's collaboration.

Top Co-Authors

Avatar

Klaus Didrich

Technical University of Berlin

View shared research outputs
Top Co-Authors

Avatar
Top Co-Authors

Avatar

Bernd Krieg-Brückner

Technische Universität München

View shared research outputs
Top Co-Authors

Avatar
Researchain Logo
Decentralizing Knowledge