897 research outputs found
Admit your weakness: Verifying correctness on TSO architectures
âThe final publication is available at http://link.springer.com/chapter/10.1007%2F978-3-319-15317-9_22 â.Linearizability has become the standard correctness criterion for fine-grained non-atomic concurrent algorithms, however, most approaches assume a sequentially consistent memory model, which is not always realised in practice. In this paper we study the correctness of concurrent algorithms on a weak memory model: the TSO (Total Store Order) memory model, which is commonly implemented by multicore architectures. Here, linearizability is often too strict, and hence, we prove a weaker criterion, quiescent consistency instead. Like linearizability, quiescent consistency is compositional making it an ideal correctness criterion in a component-based context. We demonstrate how to model a typical concurrent algorithm, seqlock, and prove it quiescent consistent using a simulation-based approach. Previous approaches to proving correctness on TSO architectures have been based on linearizabilty which makes it necessary to modify the algorithmâs high-level requirements. Our approach is the first, to our knowledge, for proving correctness without the need for such a modification
Correctness of an STM Haskell implementation
A concurrent implementation of software transactional memory in Concurrent Haskell using a call-by-need functional language with processes and futures is given. The description of the small-step operational semantics is precise and explicit, and employs an early abort of conflicting transactions. A proof of correctness of the implementation is given for a contextual semantics with may- and should-convergence. This implies that our implementation is a correct evaluator for an abstract specification equipped with a big-step semantics
Open Transactions on Shared Memory
Transactional memory has arisen as a good way for solving many of the issues
of lock-based programming. However, most implementations admit isolated
transactions only, which are not adequate when we have to coordinate
communicating processes. To this end, in this paper we present OCTM, an
Haskell-like language with open transactions over shared transactional memory:
processes can join transactions at runtime just by accessing to shared
variables. Thus a transaction can co-operate with the environment through
shared variables, but if it is rolled-back, also all its effects on the
environment are retracted. For proving the expressive power of TCCS we give an
implementation of TCCS, a CCS-like calculus with open transactions
Tolerating Faults in Counting Networks
Counting networks were proposed by Aspnes, Herlihy and Shavit [4] as a technique
for solving multiprocessor coordination problems. We describe a method for tolerating an
arbitrary number of faults in counting networks. In our fault model, the following errors can occur
dynamically in the counting network data structure: 1) a balancer's state is spuriously altered, 2)
a balancer's state can no longer be accessed.
We propose two approaches for tolerating faults. The first is based on a construction for a
fault-tolerant balancer. We substitute a fault-tolerant balancer for every balancer in a counting
network. Thus, we transform a counting network with depth O(log to the power of 2 n); where n is the
width, into a k-fault-tolerant counting network with depth O(k log to the power of 2 n).
The second approach is to append a correction network, built with fault-tolerant balancers, to a
counting network that may experience faults. We present a bound on the error in the output token
distribution of counting networks with faulty balancers (a generalization of the error bound for
sorting networks with faulty comparators presented by Yao & Yao [21]. Given a token distribution
with a bounded error, the correction network produces a token distribution that is smooth, i.e.,
the number of tokens on each output wire differs by at most one (a weaker condition than the
step property). In order to tolerate k faults, the correction network has depth O (k to the power of 2
log n) for a network of width n
A precursorâinducible zebrafish model of acute protoporphyria with hepatic protein aggregation and multiorganelle stress
Peer Reviewedhttps://deepblue.lib.umich.edu/bitstream/2027.42/154358/1/fsb2030005012.pd
Laboratory investigation of lateral dispersion within dense arrays of randomly distributed cylinders at transitional Reynolds number
Published versio
Structure/Function Analysis of Recurrent Mutations in SETD2 Protein Reveals a Critical and Conserved Role for a SET Domain Residue in Maintaining Protein Stability and Histone H3 Lys-36 Trimethylation
The yeast Set2 histone methyltransferase is a critical enzyme that plays a number of key roles in gene transcription and DNA repair. Recently, the human homologue, SETD2, was found to be recurrently mutated in a significant percentage of renal cell carcinomas, raising the possibility that the activity of SETD2 is tumor-suppressive. Using budding yeast and human cell line model systems, we examined the functional significance of two evolutionarily conserved residues in SETD2 that are recurrently mutated in human cancers. Whereas one of these mutations (R2510H), located in the Set2 Rpb1 interaction domain, did not result in an observable defect in SETD2 enzymatic function, a second mutation in the catalytic domain of this enzyme (R1625C) resulted in a complete loss of histone H3 Lys-36 trimethylation (H3K36me3). This mutant showed unchanged thermal stability as compared with the wild type protein but diminished binding to the histone H3 tail. Surprisingly, mutation of the conserved residue in Set2 (R195C) similarly resulted in a complete loss of H3K36me3 but did not affect dimethylated histone H3 Lys-36 (H3K36me2) or functions associated with H3K36me2 in yeast. Collectively, these data imply a critical role for Arg-1625 in maintaining the protein interaction with H3 and specific H3K36me3 function of this enzyme, which is conserved from yeast to humans. They also may provide a refined biochemical explanation for how H3K36me3 loss leads to genomic instability and cancer
- âŠ