146 research outputs found

    Describing and simulating concurrent quantum systems

    Get PDF
    We present a programming language for describing and analysing concurrent quantum systems. We have an interpreter for programs in the language, using a symbolic rather than a numeric calculator, and we give its performance on examples from quantum communication and cryptography

    Conducting Qualitative Longitudinal Research: Fieldwork Experiences

    Get PDF
    This collection draws on the fieldwork experiences of some of the researchers involved in the ESRC 'Timescapes: Changing Relationships and Identities throughthe Life Course‘ programme. Timescapes, the first major Qualitative Longitudinal (QLL) study to be funded in the UK, aims to build a picture of life in 21st century Britain by gathering, archiving and analysing interviews from over 400 people living in a variety of circumstances across the UK. Temporal understanding is central to the programme. In essence, Timescapes is concerned with the intersection between different dimensions of time and the ways in which temporality shapes and is shaped by the changing relationships and identities of different individuals and collectives. We are exploring how individuals perceive past, present and future, and the relationship between their biographies and wider historical processes. Our work is framed by Barbara Adam‘s (1998) notion of 'timescapes‘. Like a landscape, cityscape or seascape a timescape is a panorama or view of the world in which time is placed as central

    High-school students' mastery of basic flow-control constructs through the lens of reversibility

    Get PDF
    High-school students specialising in computing fields need to develop the abstraction skills required to understand and create programs. Novices' difficulties at high-school level, ranging from mastery of the "notional machine"to recognition of a program's purpose, have not been investigated as extensively as at tertiary level. This work explores high-school students' code comprehension by asking to reason about reversing conditional and iteration constructs. A sample of 205 K11 - 13 students from different institutions were asked to engage in a set of "reversibility tasklets". For each code fragment, they need to identify if its computation is reversible and either provide the code to reverse or an example of a value that cannot be reversed. For 4 such items, after extracting the recurrent patterns in students' answers, we have carried out an analysis within the framework of the SOLO taxonomy. Overall, 74% of answers correctly identified if the code was reversible but only 42% could provide the full explanation/code. The rate of relational answers varies from 51% down to 21%, the poorest performance arising for a small array-processing loop (and although 65% of the subjects had correctly identified the loop as reversible). The instruction level did not have a strong impact on performance, indicating such tasks are suitable for K11, when the basic flow-control constructs are usually introduced. In particular, the reversibility concept could be a useful pedagogical instrument both to assess and to help develop students' program comprehension

    Automating Deductive Verification for Weak-Memory Programs

    Full text link
    Writing correct programs for weak memory models such as the C11 memory model is challenging because of the weak consistency guarantees these models provide. The first program logics for the verification of such programs have recently been proposed, but their usage has been limited thus far to manual proofs. Automating proofs in these logics via first-order solvers is non-trivial, due to reasoning features such as higher-order assertions, modalities and rich permission resources. In this paper, we provide the first implementation of a weak memory program logic using existing deductive verification tools. We tackle three recent program logics: Relaxed Separation Logic and two forms of Fenced Separation Logic, and show how these can be encoded using the Viper verification infrastructure. In doing so, we illustrate several novel encoding techniques which could be employed for other logics. Our work is implemented, and has been evaluated on examples from existing papers as well as the Facebook open-source Folly library.Comment: Extended version of TACAS 2018 publicatio

    ‘The Invisible Chain by Which All Are Bound to Each Other’: Civil Defence Magazines and the Development of Community During the Second World War

    No full text
    This article uses local collaboratively produced civil defence magazines to examine how community spirit was developed and represented within the civil defence services during the Second World War. It highlights the range of functions which the magazines performed, as well as the strategies employed by civil defence communities to manage their emotions in order to keep morale high and distract personnel from the fear and boredom experienced while on duty. The article also discusses silences in the magazines — especially around the experience of air raids — and argues that this too reflects group emotional management strategies. The significance of local social groups in developing narratives about civil defence and their workplace communities is demonstrated, and the article shows how personnel were able to engage with and refashion dominant cultural narratives of the ‘people’s war’ in order to assert their own status within the war effort

    Neuromorphic-Based Neuroprostheses for Brain Rewiring: State-of-the-Art and Perspectives in Neuroengineering.

    Get PDF
    Neuroprostheses are neuroengineering devices that have an interface with the nervous system and supplement or substitute functionality in people with disabilities. In the collective imagination, neuroprostheses are mostly used to restore sensory or motor capabilities, but in recent years, new devices directly acting at the brain level have been proposed. In order to design the next-generation of neuroprosthetic devices for brain repair, we foresee the increasing exploitation of closed-loop systems enabled with neuromorphic elements due to their intrinsic energy efficiency, their capability to perform real-time data processing, and of mimicking neurobiological computation for an improved synergy between the technological and biological counterparts. In this manuscript, after providing definitions of key concepts, we reviewed the first exploitation of a real-time hardware neuromorphic prosthesis to restore the bidirectional communication between two neuronal populations in vitro. Starting from that 'case-study', we provide perspectives on the technological improvements for real-time interfacing and processing of neural signals and their potential usage for novel in vitro and in vivo experimental designs. The development of innovative neuroprosthetics for translational purposes is also presented and discussed. In our understanding, the pursuit of neuromorphic-based closed-loop neuroprostheses may spur the development of novel powerful technologies, such as 'brain-prostheses', capable of rewiring and/or substituting the injured nervous system

    Formal verification of a memory model for C-like imperative languages

    Get PDF
    http://www.springer.com/International audienceThis paper presents a formal verification with the Coq proof assistant of a memory model for C-like imperative languages. This model defines the memory layout and the operations that manage the memory. The model has been specified at two levels of abstraction and implemented as part of an ongoing certification in Coq of a moderately-optimising C compiler. Many properties of the memory have been verified in the specification. They facilitate the definition of precise formal semantics of C pointers. A certified OCaml code implementing the memory model has been automatically extracted from the specifications

    The Small Politics of Everyday Life: Local History Society Archives and the Production of Public Histories

    Get PDF
    Thousands of small, private archives sit in attics, cupboard, church halls and computer hard drives around the country; they are the archives of local history societies. Simultaneously freed from the control of archives sector and government initiatives, and yet saturated with local peculiarities and biases, local history society archives can seem to be the very antithesis of the wider archives movement, apparently private and parochial, undemocratic and uncatalogued. Consequently, local history society archives are rarely included in ‘the politics of the archive’ discussions. But if the activity of archiving is to be understood as a political act, what are the politics and meanings of local history and their archives? In this article, I suggest that certain types of local history society archive collections can help us paint a picture of the everyday lives of working-class people in Britain in the twentieth century. They detail the small politics of people’s lives – family, work, leisure, and beliefs. They give ordinary people a name, a face, and a life lived. Moreover, the workings of local history society archives raise important questions about historical production, for these groups play a significant role in rescuing and preserving archival collections, and in creating and curating their own histories

    Fostering Program Comprehension in Novice Programmers - Learning Activities and Learning Trajectories

    Get PDF
    This working group asserts that Program Comprehension (ProgComp) plays a critical part in the process of writing programs. For example, this paper is written from a basic draft that was edited and revised until it clearly presented our idea. Similarly, a program is written incrementally, with each step tested, debugged and extended until the program achieves its goal. Novice programmers should develop program comprehension skills as they learn to code so that they are able both to read and reason about code created by others, and to reflect on their code when writing, debugging or extending it. To foster such competencies our group identified two main goals: (g1) to collect and define learning activities that explicitly address key components of program comprehension and (g2) to define tentative theoretical learning trajectories that will guide teachers as they select and sequence those learning activities in their CS0/CS1/CS2 or K-12 courses. The WG has completed the first goal and laid down a strong foundation towards the second goal as presented in this report. After a thorough literature review, a detailed description of the Block Model is provided, as this model has been used with a dual purpose, to classify and present an extensive list of ProgComp tasks, and to describe a possible learning trajectory for a complex task, covering different cells of the Block Model matrix. The latter is intended to help instructors to decompose complex tasks and identify which aspects of ProgComp are being fostered
    corecore