1,529 research outputs found
Type classes for efficient exact real arithmetic in Coq
Floating point operations are fast, but require continuous effort on the part
of the user in order to ensure that the results are correct. This burden can be
shifted away from the user by providing a library of exact analysis in which
the computer handles the error estimates. Previously, we [Krebbers/Spitters
2011] provided a fast implementation of the exact real numbers in the Coq proof
assistant. Our implementation improved on an earlier implementation by O'Connor
by using type classes to describe an abstract specification of the underlying
dense set from which the real numbers are built. In particular, we used dyadic
rationals built from Coq's machine integers to obtain a 100 times speed up of
the basic operations already. This article is a substantially expanded version
of [Krebbers/Spitters 2011] in which the implementation is extended in the
various ways. First, we implement and verify the sine and cosine function.
Secondly, we create an additional implementation of the dense set based on
Coq's fast rational numbers. Thirdly, we extend the hierarchy to capture order
on undecidable structures, while it was limited to decidable structures before.
This hierarchy, based on type classes, allows us to share theory on the
naturals, integers, rationals, dyadics, and reals in a convenient way. Finally,
we obtain another dramatic speed-up by avoiding evaluation of termination
proofs at runtime.Comment: arXiv admin note: text overlap with arXiv:1105.275
Controllability problems in MSC-based testing
This is a pre-copyedited, author-produced PDF of an article accepted for publication in The Computer Journal following peer review. The definitive publisher-authenticated version [Dan, H and Hierons, RM (2012), "Controllability Problems in MSC-Based Testing", The Computer Journal, 55(11), 1270-1287] is available online at: http://comjnl.oxfordjournals.org/content/55/11/1270. Copyright @ The Authors 2011.In testing systems with distributed interfaces/ports, we may place a separate tester at each port. It is known that this approach can introduce controllability problems which have received much attention in testing from finite state machines. Message sequence charts (MSCs) form an alternative, commonly used, language for modelling distributed systems. However, controllability problems in testing from MSCs have not been thoroughly investigated. In this paper, controllability problems in MSC test cases are analysed with three notions of observability: local, tester and global. We identify two types of controllability problem in MSC-based testing. It transpires that each type of controllability problem is related to a type of MSC pathology. Controllability problems of timing are caused by races but not every race causes controllability problems; controllability problems of choice are caused by non-local choices and not every non-local choice causes controllability problems. We show that some controllability problems of timing are avoidable and some controllability problems of choice can be overcome when testers have better observational power. Algorithms are provided to tackle both types of controllability problems. Finally, we show how one can overcome controllability problems using a coordination service with status messages based on algorithms developed in this paper.EPSR
Propositional Dynamic Logic with Converse and Repeat for Message-Passing Systems
The model checking problem for propositional dynamic logic (PDL) over message
sequence charts (MSCs) and communicating finite state machines (CFMs) asks,
given a channel bound , a PDL formula and a CFM ,
whether every existentially -bounded MSC accepted by
satisfies . Recently, it was shown that this problem is
PSPACE-complete.
In the present work, we consider CRPDL over MSCs which is PDL equipped with
the operators converse and repeat. The former enables one to walk back and
forth within an MSC using a single path expression whereas the latter allows to
express that a path expression can be repeated infinitely often. To solve the
model checking problem for this logic, we define message sequence chart
automata (MSCAs) which are multi-way alternating parity automata walking on
MSCs. By exploiting a new concept called concatenation states, we are able to
inductively construct, for every CRPDL formula , an MSCA precisely
accepting the set of models of . As a result, we obtain that the model
checking problem for CRPDL and CFMs is still in PSPACE
A theory of regular MSC languages
Message sequence charts (MSCs) are an attractive visual formalism widely used to capture system requirements during the early design stages in domains such as telecommunication software. It is fruitful to have mechanisms for specifying and reasoning about collections of MSCs so that errors can be detected even at the requirements level. We propose, accordingly, a notion of regularity for collections of MSCs and explore its basic properties. In particular, we provide an automata-theoretic characterization of regular MSC languages in terms of finite-state distributed automata called bounded message-passing automata. These automata consist of a set of sequential processes that communicate with each other by sending and receiving messages over bounded FIFO channels. We also provide a logical characterization in terms of a natural monadic second-order logic interpreted over MSCs. A commonly used technique to generate a collection of MSCs is to use a hierarchical message sequence chart (HMSC). We show that the class of languages arising from the so-called bounded HMSCs constitute a proper subclass of the class of regular MSC languages. In fact, we characterize the bounded HMSC languages as the subclass of regular MSC languages that are finitely generated
The application of agent-based modeling and fuzzy-logic controllers for the study of magnesium biomaterials
Agent-based modeling (ABM) is a powerful approach for studying complex systems and their underlying properties by explicitly modeling the actions and interactions of individual agents. Over the past decade, numerous software programs have been developed to address the needs of the ABM community. However, these solutions often suffer from limitations in design, a lack of comprehensive documentation, or poor performance. As the first objective of this thesis, we introduce CppyABM-a general-purpose software for ABM that provides simulation tools in both Python and C++. CppyABM also enables ABM development using a combination of C++ and Python, taking advantage of the computational performance of C++ and the data analysis and visualization tools of Python. We demonstrate the capabilities of CppyABM through its application to various problems in ecology, virology, and computational biology. As the second objective of this thesis, we use ABM and fuzzy logic controllers (FLCs) to numerically study the effects of magnesium (Mg2+) ions on osteogenesis. Mg-based materials have emerged as the next generation of biomaterials that degrade in the body after implantation and eliminate the need for secondary surgery. We develop two computer models using ABM and FLC and calibrate them based on cell culture experiments. The models were able to capture the regulatory effects of Mg2+ ions and other important factors such as inflammatory cytokines on mesenchymal stem cells (MSC) activities. The models were also able to shed light on the fundamental differences in the cells cultured in different experiments such as proliferation capacity and sensitivity to environmental factors
- …