6,582 research outputs found
Data-Oblivious Stream Productivity
We are concerned with demonstrating productivity of specifications of
infinite streams of data, based on orthogonal rewrite rules. In general, this
property is undecidable, but for restricted formats computable sufficient
conditions can be obtained. The usual analysis disregards the identity of data,
thus leading to approaches that we call data-oblivious. We present a method
that is provably optimal among all such data-oblivious approaches. This means
that in order to improve on the algorithm in this paper one has to proceed in a
data-aware fashion
Stream Productivity by Outermost Termination
Streams are infinite sequences over a given data type. A stream specification
is a set of equations intended to define a stream. A core property is
productivity: unfolding the equations produces the intended stream in the
limit. In this paper we show that productivity is equivalent to termination
with respect to the balanced outermost strategy of a TRS obtained by adding an
additional rule. For specifications not involving branching symbols
balancedness is obtained for free, by which tools for proving outermost
termination can be used to prove productivity fully automatically
Distributive Laws and Decidable Properties of SOS Specifications
Some formats of well-behaved operational specifications, correspond to
natural transformations of certain types (for example, GSOS and coGSOS laws).
These transformations have a common generalization: distributive laws of monads
over comonads. We prove that this elegant theoretical generalization has
limited practical benefits: it does not translate to any concrete rule format
that would be complete for specifications that contain both GSOS and coGSOS
rules. This is shown for the case of labeled transition systems and
deterministic stream systems.Comment: In Proceedings EXPRESS/SOS 2014, arXiv:1408.127
Beating the Productivity Checker Using Embedded Languages
Some total languages, like Agda and Coq, allow the use of guarded corecursion
to construct infinite values and proofs. Guarded corecursion is a form of
recursion in which arbitrary recursive calls are allowed, as long as they are
guarded by a coinductive constructor. Guardedness ensures that programs are
productive, i.e. that every finite prefix of an infinite value can be computed
in finite time. However, many productive programs are not guarded, and it can
be nontrivial to put them in guarded form.
This paper gives a method for turning a productive program into a guarded
program. The method amounts to defining a problem-specific language as a data
type, writing the program in the problem-specific language, and writing a
guarded interpreter for this language.Comment: In Proceedings PAR 2010, arXiv:1012.455
A Phenomenological “Aesthetics of Isolation” as Environmental Aesthetics for an Era of Ubiquitous Art
Here the concept of the human being as a “relatively isolated system” developed in Ingarden’s later phenomenology is adapted into an “aesthetics of isolation” that complements conventional environmental aesthetics. Such an aesthetics of isolation is especially relevant, given the growing “aesthetic overload” brought about by ubiquitous computing and new forms of art and aesthetic experience such as those involving virtual reality, interactive online performance art, and artificial creativity
Well-definedness of Streams by Transformation and Termination
Streams are infinite sequences over a given data type. A stream specification
is a set of equations intended to define a stream. We propose a transformation
from such a stream specification to a term rewriting system (TRS) in such a way
that termination of the resulting TRS implies that the stream specification is
well-defined, that is, admits a unique solution. As a consequence, proving
well-definedness of several interesting stream specifications can be done fully
automatically using present powerful tools for proving TRS termination. In
order to increase the power of this approach, we investigate transformations
that preserve semantics and well-definedness. We give examples for which the
above mentioned technique applies for the ransformed specification while it
fails for the original one
- …