540,574 research outputs found
Trust, but Verify: Two-Phase Typing for Dynamic Languages
A key challenge when statically typing so-called dynamic languages is the
ubiquity of value-based overloading, where a given function can dynamically
reflect upon and behave according to the types of its arguments. Thus, to
establish basic types, the analysis must reason precisely about values, but in
the presence of higher-order functions and polymorphism, this reasoning itself
can require basic types. In this paper we address this chicken-and-egg problem
by introducing the framework of two-phased typing. The first "trust" phase
performs classical, i.e. flow-, path- and value-insensitive type checking to
assign basic types to various program expressions. When the check inevitably
runs into "errors" due to value-insensitivity, it wraps problematic expressions
with DEAD-casts, which explicate the trust obligations that must be discharged
by the second phase. The second phase uses refinement typing, a flow- and
path-sensitive analysis, that decorates the first phase's types with logical
predicates to track value relationships and thereby verify the casts and
establish other correctness properties for dynamically typed languages
Deductive formal verification of embedded systems
We combine static analysis techniques with model-based deductive verification using SMT solvers to provide a framework that, given an analysis aspect of the source code, automatically generates an analyzer capable of inferring information about that aspect.
The analyzer is generated by translating the collecting semantics of a program to a formula in first order logic over multiple underlying theories. We import the semantics of the API invocations as first order logic assertions. These assertions constitute the models used by the analyzer. Logical specification of the desired program behavior is incorporated as a first order logic formula. An SMT-LIB solver treats the combined formula as a constraint and solves it. The solved form can be used to identify logical and security errors in embedded programs. We have used this framework to analyze Android applications and MATLAB code.
We also report the formal verification of the conformance of the open source Netgear WNR3500L wireless router firmware implementation to the RFC 2131. Formal verification of a software system is essential for its deployment in mission-critical environments. The specifications for the development of routers are provided by RFCs that are only described informally in English. It is prudential to ensure that a router firmware conforms to its corresponding RFC before it can be deployed for managing mission-critical networks. The formal verification process demonstrates the usefulness of inductive types and higher-order logic in software certification
The S.E.L.F. Approach: Systems and Experiential Learning Framework for Fieldwork and Capstone Education Development
This article presents an evidence-based strategy to assist academic fieldwork coordinators and capstone coordinators with meeting the Accreditation Council for Occupational Therapy Education standards of experiential learning components in an entry-level doctoral occupational therapy curriculum. The S.E.L.F. approach core methods for pedagogical framework and manual development are based on systems theory and educational learning theories. To optimize fieldwork and capstone delivery, the recommended process should include organizational analysis, program development, manual writing, and implementation of practical learning experience. Objectives of the fieldwork and capstone experiences can effectively connect to the overall curriculum design while addressing integral credentialing standards through an evidence-based approach. The applied learning theories are pertinent for educators to objectively deliver beneficial experiential pedagogical outcomes for student professional growth. This article provides a logical fieldwork and capstone framework for pedagogical and manual development. The S.E.L.F. approach transforms learning to meet objectives of the occupational therapy program, students, and other potential audience stakeholders
Bosehedral: Compiler Optimization for Bosonic Quantum Computing
Bosonic quantum computing, based on the infinite-dimensional qumodes, has
shown promise for various practical applications that are classically hard.
However, the lack of compiler optimizations has hindered its full potential.
This paper introduces Bosehedral, an efficient compiler optimization framework
for (Gaussian) Boson sampling on Bosonic quantum hardware. Bosehedral overcomes
the challenge of handling infinite-dimensional qumode gate matrices by
performing all its program analysis and optimizations at a higher algorithmic
level, using a compact unitary matrix representation. It optimizes qumode gate
decomposition and logical-to-physical qumode mapping, and introduces a tunable
probabilistic gate dropout method. Overall, Bosehedral significantly improves
the performance by accurately approximating the original program with much
fewer gates. Our evaluation shows that Bosehedral can largely reduce the
program size but still maintain a high approximation fidelity, which can
translate to significant end-to-end application performance improvement
When Do Program-of-Thoughts Work for Reasoning?
The reasoning capabilities of Large Language Models (LLMs) play a pivotal
role in the realm of embodied artificial intelligence. Although there are
effective methods like program-of-thought prompting for LLMs which uses
programming language to tackle complex reasoning tasks, the specific impact of
code data on the improvement of reasoning capabilities remains under-explored.
To address this gap, we propose complexity-impacted reasoning score (CIRS),
which combines structural and logical attributes, to measure the correlation
between code and reasoning abilities. Specifically, we use the abstract syntax
tree to encode the structural information and calculate logical complexity by
considering the difficulty and the cyclomatic complexity. Through an empirical
analysis, we find not all code data of complexity can be learned or understood
by LLMs. Optimal level of complexity is critical to the improvement of
reasoning abilities by program-aided prompting. Then we design an
auto-synthesizing and stratifying algorithm, and apply it to instruction
generation for mathematical reasoning and code data filtering for code
generation tasks. Extensive results demonstrates the effectiveness of our
proposed approach. Code will be integrated into the EasyInstruct framework at
https://github.com/zjunlp/EasyInstruct.Comment: Work in progres
Sense, reference, and computation
In this paper, I revisit Frege's theory of sense and reference in the constructive setting of the meaning explanations of type theory, extending and sharpening a program–value analysis of sense and reference proposed by Martin-Löf building on previous work of Dummett. I propose a computational identity criterion for senses and argue that it validates what I see as the most plausible interpretation of Frege's equipollence principle for both sentences and singular terms. Before doing so, I examine Frege's implementation of his theory of sense and reference in the logical framework of Grundgesetze, his doctrine of truth values, and views on sameness of sense as equipollence of assertions
Support Information Systems, a tool which enhance learning and monitoring
A Support Information System (SIS) has been created in order to monitor water and
sanitation (WatSan) programs and improve their efficiency. SIS is based on a database
system where relevant data of the program can be easily stored and processed through user-friendly interfaces. Definition of the information to be introduced in the database shall be done according to the needs of the profesionals working directly on the project and to the data needed to observe the evolution of the program indicators, as those defining the Logical Framework. As long as the information is georeferenced,
information can be automatically displayed on a Geographical Information System (GIS), and therefore its spatial evolution can be easily analyzed. Graphical representation facilitates the analysis and allows for a better response on real time while the programme is being implemented. The use of SIS enables for hindsight research, helping to improve efficiency and, therefore program extension/replication.Peer ReviewedPostprint (published version
MANUFACTURING INFORMATION SYSTEM ON PT. ANUGERAH TRIDAYA MANDIRI PALEMBANG
The research objective is to analyze and design systems that deal with
manufacturing problems at PT. Anugerah Tridaya Mandiri Palembang, where the
analysis and design can help simplify the search data and activities that exist within
the company.
Thesis writing method is a method of FAST (Framework for the Application
of System Techniques) which consists of methods of analysis and design methods.
The analytical method consists of an overview of the company, running the system
procedure, problem analysis, requirements analysis, and feasibility analysis. Design
method consists of a logical system design, design of physical systems, program
design, and implementation plans.
This application is designed using the software Microsoft Visual Basic 2008
as a program application and SQL Server 2005 as database.
The results of this analysis is expected to help reduce errors that occur in the
process of purchase, sale and supply of raw materials and be able to simplify and
speed in making the report
- …