51 research outputs found

    Amorphous procedure extraction

    Get PDF
    The procedure extraction problem is concerned with the meaning preserving formation of a procedure from a (not necessarily contiguous) selected set of statements. Previous approaches to the problem have used dependence analysis to identify the non-selected statements which must be 'promoted' (also selected) in order to preserve semantics. All previous approaches to the problem have been syntax preserving. This work shows that by allowing transformation of the program's syntax it is possible to extract both procedures and functions in an amorphous manner. That is, although the amorphous extraction process is meaning preserving it is not necessarily syntax preserving. The amorphous approach is advantageous in a variety of situations. These include when it is desirable to avoid promotion, when a value-returning function is to be extracted from a scattered set of assignments to a variable, and when side effects are present in the program from which the procedure is to be extracted

    Amorphous procedure extraction

    Get PDF
    The procedure extraction problem is concerned with the meaning preserving formation of a procedure from a (not necessarily contiguous) selected set of statements. Previous approaches to the problem have used dependence analysis to identify the non-selected statements which must be 'promoted' (also selected) in order to preserve semantics. All previous approaches to the problem have been syntax preserving. This work shows that by allowing transformation of the program's syntax it is possible to extract both procedures and functions in an amorphous manner. That is, although the amorphous extraction process is meaning preserving it is not necessarily syntax preserving. The amorphous approach is advantageous in a variety of situations. These include when it is desirable to avoid promotion, when a value-returning function is to be extracted from a scattered set of assignments to a variable, and when side effects are present in the program from which the procedure is to be extracted

    The Formal Semantics of Program Slicing for Non-Terminating Computations

    Get PDF
    Since the original development of program slicing in 1979 [.Weiser slices 1979.] there have been many attempts to define a suitable semantics which will precisely define the meaning of a slice. Particular issues include handling termination and non-termination, slicing non-terminating programs and slicing nondeterministic programs. In this paper we review and critique the main attempts to construct a semantics for slicing and present a new operational semantics which correctly handles slicing for non-terminating and nondeterministic programs. We also present a modified denotational semantics which we prove to be equivalent to the operational semantics. This provides programmers with two different methods to prove the correctness of a slice or a slicing algorithm, and means that the program transformation theory and FermaT transformation system, developed over the last 25 years of research, and which has proved so successful in analysing terminating programs, can now be applied to non-terminating interactive programs

    A trajectory-based strict semantics for program slicing

    Get PDF
    We define a program semantics that is preserved by dependence-based slicing algorithms. It is a natural extension, to non-terminating programs, of the semantics introduced by Weiser (which only considered terminating ones) and, as such, is an accurate characterisation of the semantic relationship between a program and the slice produced by these algorithms. Unlike other approaches, apart from Weiser’s original one, it is based on strict standard semantics which models the ‘normal’ execution of programs on a von Neumann machine and, thus, has the advantage of being intuitive. This is essential since one of the main applications of slicing is program comprehension. Although our semantics handles non-termination, it is defined wholly in terms of finite trajectories, without having to resort to complex, counter-intuitive, non-standard models of computation. As well as being simpler, unlike other approaches to this problem, our semantics is substitutive. Substitutivity is an important property becauseit greatly enhances the ability to reason about correctness of meaning-preserving program transformations such as slicing

    An Analysis of the Current Program Slicing and Algorithmic Debugging Based Techniques

    Full text link
    This thesis presents a classification of program slicing based techniques. The classification allows us to identify the differences between existing techniques, but it also allows us to predict new slicing techniques. The study identifies and compares the dimensions that influence current techniques.Silva Galiana, JF. (2008). An Analysis of the Current Program Slicing and Algorithmic Debugging Based Techniques. http://hdl.handle.net/10251/14300Archivo delegad

    DNA as Topological Quantum Computer

    Get PDF
    This article represents a vision about how DNA might act as a topological quantum computer (tqc). Tqc means that the braidings of braid strands define tqc programs and M-matrix (generalization of S-matrix in zero energy ontology) defining the entanglement between states assignable to the end points of strands define the tqc usually coded as unitary time evolution for Schödinger equation. One can ends up to the model in the following manner. a) Darwinian selection for which the standard theory of self-organization provides a model, should apply also to tqc programs. Tqc programs should correspond to asymptotic self-organization patterns selected by dissipation in the presence of metabolic energy feed. The spatial and temporal pattern of the metabolic energy feed characterizes the tqc program - or equivalently - sub-program call. b) Since braiding characterizes the tqc program, the self-organization pattern should correspond to a hydrodynamical flow or a pattern of magnetic field inducing the braiding. Braid strands must correspond to magnetic flux tubes of the magnetic body of DNA. If each nucleotide is transversal magnetic dipole it gives rise to transversal flux tubes, which can also connect to the genome of another cell. As a matter fact, the flux tubes would correspond to what I call wormhole magnetic fields having pairs of space-time sheets carrying opposite magnetic fluxes. c) The output of tqc sub-program is probability distribution for the outcomes of state function reduction so that the sub-program must be repeated very many times. It is represented as four-dimensional patterns for various rates (chemical rates, nerve pulse patterns, EEG power distributions, ...) having also identification as temporal densities of zero energy states in various scales. By the fractality of TGD Universe there is a hierarchy of tqcs corresponding to p-adic and dark matter hierarchies. Programs (space-time sheets defining coherence regions) call programs in shorter scale. If the self-organizing system has a periodic behavior each tqc module defines a large number of almost copies of itself asymptotically. Generalized EEG could naturally define this periodic pattern and each period of EEG would correspond to an initiation and halting of tqc. This brings in mind the periodically occurring sol-gel phase transition inside cell near the cell membrane. There is also a connection with hologram idea: EEG rhythm corresponds to reference wave and nerve pulse patters to the wave carrying the information and interfering with the reference wave. d) Fluid flow must induce the braiding which requires that the ends of braid strands must be anchored to the fluid flow. Recalling that lipid mono-layers of the cell membrane are liquid crystals and lipids of interior mono-layer have hydrophilic ends pointing towards cell interior, it is easy to guess that DNA nucleotides are connected to lipids by magnetic flux tubes and hydrophilic lipid ends are stuck to the flow. e) The topology of the braid traversing cell membrane cannot be affected by the hydrodynamical flow. Hence braid strands must be split during tqc. This also induces the desired magnetic isolation from the environment. Halting of tqc reconnects them and make possible the communication of the outcome of tqc. The model makes several testable predictions about DNA itself. In particular, matter-antimatter asymmetry and slightly broken isospin symmetry have counterparts at DNA level induced from the breaking of these symmetries for quarks and antiquarks associated with the flux tubes. DNA cell membrane system is not the only possible system that could perform tqc like activities and store memories in braidings: flux tubes could connect biomolecules and the braiding could provide an almost definition for what it is to be living. Even water memory might reduce to braidings. The model leads also to an improved understanding of other roles of the magnetic flux tubes containing dark matter. Phase transitions changing the value of Planck constant for the magnetic flux tubes could be key element of bio-catalysis and electromagnetic long distance communications in living matter. For instance, one ends up to what might be called code for protein folding and bio-catalysis. There is also a fascinating connection with Peter Gariaev's work suggesting that the phase transitions changing Planck constant have been observed and wormhole magnetic flux tubes containing dark matter have been photographed in his experiments
    corecore