339 research outputs found
Mechanistic Analysis of Chromatin Remodeling Enzymes: a Dissertation
The inherently repressive nature of chromatin presents a sizeable barrier for all nuclear processes in which access to DNA is required. Therefore, eukaryotic organisms ranging from yeast to humans rely on a battery of enzymes that disrupt the chromatin structure as a means of regulating DNA transactions.
These enzymes can be divided into two broad classes: those that covalently modify histone proteins, and those that actively disrupt nucleosomal structure using the free energy derived from ATP hydrolysis. The latter group, huge, multisubunit ATP-dependent chromatin remodeling factors, are emerging as a common theme in all nuclear processes in which access to DNA is essential. Although transcription is the process for which a requirement for chromatin remodeling is best documented, it is now becoming clear that other processes like replication, recombination and DNA repair rely on it as well.
A growing number of ATP-dependent remodeling machines has been uncovered in the last 10 years. Although they differ in their subunit composition, organism or tissue restriction, substrate specificity, and regulating/recruiting partners, it has become increasingly evident that all ATP-dependent chromatin remodeling factors share a similar underlying mechanism.
This mechanism is the subject of the studies presented in this thesis. Chromatin-remodeling factors seem to bind both the histone and DNA components of nucleosomes. From a fixed position on nucleosomes, the remodeling factors appear to translocate on the DNA, generating torsional stress on the double helix. This activity has several consequences, including the distortion of the DNA structure on the surface of the histone octamer, the disruption of histone-DNA interactions, and the mobilization of the nucleosome core with respect to the DNA.
The work presented in this thesis, along with data reported by other groups, supports the hypothesis that yeast SWI/SNF chromatin remodeling complex and the recombinational repair factor, Rad54p, both employ similar mechanisms to regulate gene transcription, and facilitate homologous DNA pairing and recombination, respectively
A Representation Theorem for Second-Order Functionals
Representation theorems relate seemingly complex objects to concrete, more
tractable ones.
In this paper, we take advantage of the abstraction power of category theory
and provide a general representation theorem for a wide class of second-order
functionals which are polymorphic over a class of functors. Types polymorphic
over a class of functors are easily representable in languages such as Haskell,
but are difficult to analyse and reason about. The concrete representation
provided by the theorem is easier to analyse, but it might not be as convenient
to implement. Therefore, depending on the task at hand, the change of
representation may prove valuable in one direction or the other.
We showcase the usefulness of the representation theorem with a range of
examples. Concretely, we show how the representation theorem can be used to
show that traversable functors are finitary containers, how parameterised
coalgebras relate to very well-behaved lenses, and how algebraic effects might
be implemented in a functional language
An investigation of the laws of traversals
Traversals of data structures are ubiquitous in programming. Consequently, it is important to be able to characterise those structures that are traversable and understand their algebraic properties. Traversable functors have been characterised by McBride and Paterson as those equipped with a distributive law over arbitrary applicative functors; however, laws that fully capture the intuition behind traversals are missing. This article is an attempt to remedy this situation by proposing laws for characterising traversals that capture the intuition behind them. To support our claims, we prove that finitary containers are traversable in our sense and argue that elements in a traversable structure are visited exactly once.Fil: Jaskelioff, Mauro Javier. Consejo Nacional de Investigaciones Científicas y Técnicas. Centro Científico Tecnológico Conicet - Rosario. Centro Internacional Franco Argentino de Ciencias de la Información y de Sistemas. Universidad Nacional de Rosario. Centro Internacional Franco Argentino de Ciencias de la Información y de Sistemas; Argentina. Universidad Nacional de Rosario; ArgentinaFil: Rypacek, Ondrej. King's College London; Reino Unid
The under-performing unfold: a new approach to optimising corecursive programs
This paper presents a new approach to optimising corecursive programs by factorisation. In particular, we focus on programs written using the corecursion operator unfold. We use and expand upon the proof techniques of guarded coinduction and unfold fusion, capturing a pattern of generalising coinductive hypotheses by means of abstraction and representation functions. The pattern we observe is simple, has not been observed before, and is widely applicable. We develop a general program factorisation theorem from this pattern, demonstrating its utility with a range of practical examples
The under-performing unfold: a new approach to optimising corecursive programs
This paper presents a new approach to optimising corecursive programs by factorisation. In particular, we focus on programs written using the corecursion operator unfold. We use and expand upon the proof techniques of guarded coinduction and unfold fusion, capturing a pattern of generalising coinductive hypotheses by means of abstraction and representation functions. The pattern we observe is simple, has not been observed before, and is widely applicable. We develop a general program factorisation theorem from this pattern, demonstrating its utility with a range of practical examples
Modularity and implementation of mathematical operational semantics
Structural operational semantics is a popular technique for specifying the meaning of programs by means of inductive clauses. One seeks syntactic restrictions on those clauses so that the resulting operational semantics is well-behaved. This approach is simple and concrete but it has some drawbacks. Turi pioneered a more abstract categorical treatment based upon the idea that operational semantics is essentially a distribution of syntax over behaviour. In this article we take Turi's approach in two new directions. Firstly, we show how to write operational semantics as modular components and how to combine such components to specify complete languages. Secondly, we show how the categorical nature of Turi's operational semantics makes it ideal for implementation in a functional programming language such as Haskell
Modularity and implementation of mathematical operational semantics
Structural operational semantics is a popular technique for specifying the meaning of programs by means of inductive clauses. One seeks syntactic restrictions on those clauses so that the resulting operational semantics is well-behaved. This approach is simple and concrete but it has some drawbacks. Turi pioneered a more abstract categorical treatment based upon the idea that operational semantics is essentially a distribution of syntax over behaviour. In this article we take Turi's approach in two new directions. Firstly, we show how to write operational semantics as modular components and how to combine such components to specify complete languages. Secondly, we show how the categorical nature of Turi's operational semantics makes it ideal for implementation in a functional programming language such as Haskell
Programación estructurada matemáticamente
Los lenguajes de programación modernos poseen características que aumentan considerablemente su poder expresivo. Este poder expresivo permite la internalización de las estructuras matemáticas que sustentan la semántica de los lenguajes. Dichas estructuras proveen abstracciones que facilitan distintos aspectos del desarrollo de software, como ser modularidad, optimización, seguridad y verificación. Nos proponemos investigar las propiedades y aplicaciones de estructuras tales como mónadas, arrows, y functores aplicativos.Eje: Aspectos teóricos de Ciencias de la ComputaciónRed de Universidades con Carreras en Informática (RedUNCI
Lifting of operations in modular monadic semantics
Monads have become a fundamental tool for structuring denotational semantics and programs by abstracting a wide variety of computational features such as side-effects, input/output, exceptions, continuations and non-determinism. In this setting, the notion of a monad is equipped with operations that allow programmers to manipulate these computational effects. For example, a monad for side-effects is equipped with operations for setting and reading the state, and a monad for exceptions is equipped with operations for throwing and handling exceptions.
When several effects are involved, one can employ the incremental approach to mod- ular monadic semantics, which uses monad transformers to build up the desired monad one effect at a time. However, a limitation of this approach is that the effect-manipulating operations need to be manually lifted to the resulting monad, and consequently, the lifted operations are non-uniform. Moreover, the number of liftings needed in a system grows as the product of the number of monad transformers and operations involved.
This dissertation proposes a theory of uniform lifting of operations that extends the incremental approach to modular monadic semantics with a principled technique for lifting operations. Moreover the theory is generalized from monads to monoids in a monoidal category, making it possible to apply it to structures other than monads.
The extended theory is taken to practice with the implementation of a new extensible monad transformer library in Haskell, and with the use of modular monadic semantics to obtain modular operational semantics
- …