48,557 research outputs found
Meta-F*: Proof Automation with SMT, Tactics, and Metaprograms
We introduce Meta-F*, a tactics and metaprogramming framework for the F*
program verifier. The main novelty of Meta-F* is allowing the use of tactics
and metaprogramming to discharge assertions not solvable by SMT, or to just
simplify them into well-behaved SMT fragments. Plus, Meta-F* can be used to
generate verified code automatically.
Meta-F* is implemented as an F* effect, which, given the powerful effect
system of F*, heavily increases code reuse and even enables the lightweight
verification of metaprograms. Metaprograms can be either interpreted, or
compiled to efficient native code that can be dynamically loaded into the F*
type-checker and can interoperate with interpreted code. Evaluation on
realistic case studies shows that Meta-F* provides substantial gains in proof
development, efficiency, and robustness.Comment: Full version of ESOP'19 pape
Nudging folks towards stronger password choices:providing certainty is the key
Persuading people to choose strong passwords is challenging. One way to influence password strength, as and when people are making the choice, is to tweak the choice architecture to encourage stronger choice. A variety of choice architecture manipulations i.e. ânudgesâ, have been trialled by researchers with a view to strengthening the overall password profile. None has made much of a difference so far. Here we report on our design of an influential behavioural intervention tailored to the password choice context: a hybrid nudge that significantly prompted stronger passwords.We carried out three longitudinal studies to analyse the efficacy of a range of ânudgesâ by manipulating the password choice architecture of an actual university web application. The first and second studies tested the efficacy of several simple visual framing ânudgesâ. Password strength did not budge. The third study tested expiration dates directly linked to password strength. This manipulation delivered a positive result: significantly longer and stronger passwords. Our main conclusion was that the final successful nudge provided participants with absolute certainty as to the benefit of a stronger password, and that it was this certainty that made the difference
Classical Control, Quantum Circuits and Linear Logic in Enriched Category Theory
We describe categorical models of a circuit-based (quantum) functional
programming language. We show that enriched categories play a crucial role.
Following earlier work on QWire by Paykin et al., we consider both a simple
first-order linear language for circuits, and a more powerful host language,
such that the circuit language is embedded inside the host language. Our
categorical semantics for the host language is standard, and involves cartesian
closed categories and monads. We interpret the circuit language not in an
ordinary category, but in a category that is enriched in the host category. We
show that this structure is also related to linear/non-linear models. As an
extended example, we recall an earlier result that the category of W*-algebras
is dcpo-enriched, and we use this model to extend the circuit language with
some recursive types
Integrating content-based language learning and intercultural learning online: An international eGrops collaboration
Learning language through content in the tertiary context presents a challenge in that
language teachers, particularly in EAP/ESP contexts, are not necessarily experts in
their studentsâ speciality subject areas, while subject experts might lack language
teaching methodology. Furthermore, intercultural awareness, a key qualification in
todayâs global work environment, tends to take a back seat in a content-based
approach. This paper reports on a didactic concept which integrates subject-based
language learning with intercultural experience through online collaboration in an
international eGroups set-up. The creation of a collaborative learning space aimed to
bring together learners from different cultural contexts (New Zealand and Germany)
and with different target languages (German and English) towards shared learning
outcomes. Data from student interactions will help illustrate to what extent the
eGroups model promoted interactive, communicative and intercultural competence
through content-related bilingual collaboration
Linguistic Reflection in Java
Reflective systems allow their own structures to be altered from within. Here
we are concerned with a style of reflection, called linguistic reflection,
which is the ability of a running program to generate new program fragments and
to integrate these into its own execution. In particular we describe how this
kind of reflection may be provided in the compiler-based, strongly typed
object-oriented programming language Java. The advantages of the programming
technique include attaining high levels of genericity and accommodating system
evolution. These advantages are illustrated by an example taken from persistent
programming which shows how linguistic reflection allows functionality (program
code) to be generated on demand (Just-In-Time) from a generic specification and
integrated into the evolving running program. The technique is evaluated
against alternative implementation approaches with respect to efficiency,
safety and ease of use.Comment: 25 pages. Source code for examples at
http://www-ppg.dcs.st-and.ac.uk/Java/ReflectionExample/ Dynamic compilation
package at http://www-ppg.dcs.st-and.ac.uk/Java/DynamicCompilation
The Technological Bias in the Establishment of a Technological Regime: the adoption and enforcement of early information processing technologies in US manufacturing, 1870-1930
This paper presents a qualitative study on the adoption of early information technologies, such as typewriters, calculators or Hollerith machines in US manufacturing in the period between 1870 and 1930, which was by all means a true systemic innovation. Our empirical work is guided by a theoretical framework in which the theory of induced innovation is interpreted along "classical" lines in which an explicit link to the concept of technological regimes is established. We show how the presence of a distinct bias in technical change in US manufacturing led to the opening of a window of opportunity for early information technologies. We work out how the presence of this bias influenced the technological search and adoption process of firms and how this found its final reflection in the rules and heuristics of the regime, as well as the technological trajectories of the technologies. The reliance on established practices led organisation designers to cast the logic of large scale manufacturing into the administrative organisation of firms. This required the convergence of technical practices. The resulting technological trajectories and path dependencies were the outcome of the diffusion and the hardening of the early office work regime. Our analysis of US manufacturing data of the period suggests that even though electrification and "bureaucratisation" overlapped they cannot considered being the result of the same pattern of technology adoption, identified by the development of the capital-labour ratio.economics of technology ;
FunTAL: Reasonably Mixing a Functional Language with Assembly
We present FunTAL, the first multi-language system to formalize safe
interoperability between a high-level functional language and low-level
assembly code while supporting compositional reasoning about the mix. A central
challenge in developing such a multi-language is bridging the gap between
assembly, which is staged into jumps to continuations, and high-level code,
where subterms return a result. We present a compositional stack-based typed
assembly language that supports components, comprised of one or more basic
blocks, that may be embedded in high-level contexts. We also present a logical
relation for FunTAL that supports reasoning about equivalence of high-level
components and their assembly replacements, mixed-language programs with
callbacks between languages, and assembly components comprised of different
numbers of basic blocks.Comment: 15 pages; implementation at https://dbp.io/artifacts/funtal/;
published in PLDI '17, Proceedings of the 38th ACM SIGPLAN Conference on
Programming Language Design and Implementation, June 18 - 23, 2017,
Barcelona, Spai
- âŠ