2,057 research outputs found
Debugging of Web Applications with Web-TLR
Web-TLR is a Web verification engine that is based on the well-established
Rewriting Logic--Maude/LTLR tandem for Web system specification and
model-checking. In Web-TLR, Web applications are expressed as rewrite theories
that can be formally verified by using the Maude built-in LTLR model-checker.
Whenever a property is refuted, a counterexample trace is delivered that
reveals an undesired, erroneous navigation sequence. Unfortunately, the
analysis (or even the simple inspection) of such counterexamples may be
unfeasible because of the size and complexity of the traces under examination.
In this paper, we endow Web-TLR with a new Web debugging facility that supports
the efficient manipulation of counterexample traces. This facility is based on
a backward trace-slicing technique for rewriting logic theories that allows the
pieces of information that we are interested to be traced back through inverse
rewrite sequences. The slicing process drastically simplifies the computation
trace by dropping useless data that do not influence the final result. By using
this facility, the Web engineer can focus on the relevant fragments of the
failing application, which greatly reduces the manual debugging effort and also
decreases the number of iterative verifications.Comment: In Proceedings WWV 2011, arXiv:1108.208
Cable Tree Wiring -- Benchmarking Solvers on a Real-World Scheduling Problem with a Variety of Precedence Constraints
Cable trees are used in industrial products to transmit energy and
information between different product parts. To this date, they are mostly
assembled by humans and only few automated manufacturing solutions exist using
complex robotic machines. For these machines, the wiring plan has to be
translated into a wiring sequence of cable plugging operations to be followed
by the machine. In this paper, we study and formalize the problem of deriving
the optimal wiring sequence for a given layout of a cable tree. We summarize
our investigations to model this cable tree wiring Problem (CTW) as a traveling
salesman problem with atomic, soft atomic, and disjunctive precedence
constraints as well as tour-dependent edge costs such that it can be solved by
state-of-the-art constraint programming (CP), Optimization Modulo Theories
(OMT), and mixed-integer programming (MIP) solvers. It is further shown, how
the CTW problem can be viewed as a soft version of the coupled tasks scheduling
problem. We discuss various modeling variants for the problem, prove its
NP-hardness, and empirically compare CP, OMT, and MIP solvers on a benchmark
set of 278 instances. The complete benchmark set with all models and instance
data is available on github and is accepted for inclusion in the MiniZinc
challenge 2020
Efficient abstractions for visualization and interaction
Abstractions, such as functions and methods, are an essential tool for any programmer. Abstractions encapsulate the details of a computation: the programmer only needs to know what the abstraction achieves, not how it achieves it. However, using abstractions can come at a cost: the resulting program may be inefficient. This can lead to programmers not using some abstractions, instead writing the entire functionality from the ground up. In this thesis, we present several results that make this situation less likely when programming interactive visualizations. We present results that make abstractions more efficient in the areas of graphics, layout and events
Biologically inspired distributed machine cognition: a new formal approach to hyperparallel computation
The irresistable march toward multiple-core chip technology presents currently intractable pdrogramming challenges. High level mental processes in many animals, and their analogs for social structures, appear similarly massively parallel, and recent mathematical models addressing them may be adaptable to the multi-core programming problem
Prospects for Declarative Mathematical Modeling of Complex Biological Systems
Declarative modeling uses symbolic expressions to represent models. With such
expressions one can formalize high-level mathematical computations on models
that would be difficult or impossible to perform directly on a lower-level
simulation program, in a general-purpose programming language. Examples of such
computations on models include model analysis, relatively general-purpose
model-reduction maps, and the initial phases of model implementation, all of
which should preserve or approximate the mathematical semantics of a complex
biological model. The potential advantages are particularly relevant in the
case of developmental modeling, wherein complex spatial structures exhibit
dynamics at molecular, cellular, and organogenic levels to relate genotype to
multicellular phenotype. Multiscale modeling can benefit from both the
expressive power of declarative modeling languages and the application of model
reduction methods to link models across scale. Based on previous work, here we
define declarative modeling of complex biological systems by defining the
operator algebra semantics of an increasingly powerful series of declarative
modeling languages including reaction-like dynamics of parameterized and
extended objects; we define semantics-preserving implementation and
semantics-approximating model reduction transformations; and we outline a
"meta-hierarchy" for organizing declarative models and the mathematical methods
that can fruitfully manipulate them
Development of a stochastic simulator for biological systems based on Calculus of Looping Sequences.
Molecular Biology produces a huge amount of data concerning the behavior of the
single constituents of living organisms. Nevertheless, this reductionism view is not
sucient to gain a deep comprehension of how such components interact together
at the system level, generating the set of complex behavior we observe in nature.
This is the main motivation of the rising of one of the most interesting and recent
applications of computer science: Computational Systems Biology, a new science
integrating experimental activity and mathematical modeling in order to study the
organization principles and the dynamic behavior of biological systems.
Among the formalisms that either have been applied to or have been inspired by
biological systems there are automata based models, rewrite systems, and process
calculi.
Here we consider a formalism based on term rewriting called Calculus of Looping
Sequences (CLS) aimed to model chemical and biological systems. In order to quantitatively
simulate biological systems a stochastic extension of CLS has been developed;
it allows to express rule schemata with the simplicity of notation of term
rewriting and has some semantic means which are common in process calculi.
In this thesis we carry out the study of the implementation of a stochastic simulator
for the CLS formalism. We propose an extension of Gillespie's stochastic
simulation algorithm that handles rule schemata with rate functions, and we present
an efficient bottom-up, pre-processing based, CLS pattern matching algorithm.
A simulator implementing the ideas introduced in this thesis, has been developed
in F#, a multi-paradigm programming language for .NET framework modeled on
OCaml. Although F# is a research project, still under continuous development,
it has a product quality performance. It merges seamlessly the object oriented,
the functional and the imperative programming paradigms, allowing to exploit the
performance, the portability and the tools of .NET framework
- …