scholarly journals Advantages of a modular high-level quantum programming framework

2019 ◽  
Vol 66 ◽  
pp. 81-89
Author(s):  
Damian S. Steiger ◽  
Thomas Häner ◽  
Matthias Troyer
2022 ◽  
Vol 18 (1) ◽  
pp. 1-24
Author(s):  
N. Khammassi ◽  
I. Ashraf ◽  
J. V. Someren ◽  
R. Nane ◽  
A. M. Krol ◽  
...  

With the potential of quantum algorithms to solve intractable classical problems, quantum computing is rapidly evolving, and more algorithms are being developed and optimized. Expressing these quantum algorithms using a high-level language and making them executable on a quantum processor while abstracting away hardware details is a challenging task. First, a quantum programming language should provide an intuitive programming interface to describe those algorithms. Then a compiler has to transform the program into a quantum circuit, optimize it, and map it to the target quantum processor respecting the hardware constraints such as the supported quantum operations, the qubit connectivity, and the control electronics limitations. In this article, we propose a quantum programming framework named OpenQL, which includes a high-level quantum programming language and its associated quantum compiler. We present the programming interface of OpenQL, we describe the different layers of the compiler and how we can provide portability over different qubit technologies. Our experiments show that OpenQL allows the execution of the same high-level algorithm on two different qubit technologies, namely superconducting qubits and Si-Spin qubits. Besides the executable code, OpenQL also produces an intermediate quantum assembly code, which is technology independent and can be simulated using the QX simulator.


Robotica ◽  
2020 ◽  
pp. 1-24
Author(s):  
Andrés S. Vázquez ◽  
Tomás Calvo ◽  
Raúl Fernández ◽  
Francisco Ramos

SUMMARY This paper proposes an approach for the high-level programming of co-designed robots that reduces programming complexity. Particularly, the work presented focuses on the programming framework of an intelligent system, based on the IEEE Standard Ontologies for Robotics and Automation, which allows users the automatic design of robots and the automatic implementation of controllers in the Robot Operating System (ROS). In our approach, the co-designed robot functionalities are automatically translated into visual programming blocks allowing non-expert users an easy robot programming by means of a visual programming language. Several robot configurations and three case studies are provided as a proof of concept. The validation, in terms of usability, of the framework has been carried out with inexperienced users showing promising results.


2001 ◽  
Vol 1 (3) ◽  
pp. 359-380 ◽  
Author(s):  
PAUL TARAU ◽  
VERONICA DAHL

We describe a scheme for moving living code between a set of distributed processes coordinated with unification based Linda operations, and its application to building a comprehensive Logic programming based Internet programming framework. Mobile threads are implemented by capturing first order continuations in a compact data structure sent over the network. Code is fetched lazily from its original base turned into a server as the continuation executes at the remote site. Our code migration techniques, in combination with a dynamic recompilation scheme, ensure that heavily used code moves up smoothly on a speed hierarchy while volatile dynamic code is kept in a quickly updatable form. Among the examples, we describe how to build programmable client and server components (Web servers, in particular) and mobile agents.


2004 ◽  
Vol 14 (4) ◽  
pp. 527-586 ◽  
Author(s):  
PETER SELINGER

We propose the design of a programming language for quantum computing. Traditionally, quantum algorithms are frequently expressed at the hardware level, for instance in terms of the quantum circuit model or quantum Turing machines. These approaches do not encourage structured programming or abstractions such as data types. In this paper, we describe the syntax and semantics of a simple quantum programming language with high-level features such as loops, recursive procedures, and structured data types. The language is functional in nature, statically typed, free of run-time errors, and has an interesting denotational semantics in terms of complete partial orders of superoperators.


2009 ◽  
Vol 17 (3) ◽  
pp. 215-230 ◽  
Author(s):  
Matthew G. Knepley ◽  
Dmitry A. Karpeev

We have developed a new programming framework, called Sieve, to support parallel numerical partial differential equation(s) (PDE) algorithms operating over distributed meshes. We have also developed a reference implementation of Sieve in C++ as a library of generic algorithms operating on distributed containers conforming to the Sieve interface. Sieve makes instances of the incidence relation, or arrows, the conceptual first-class objects represented in the containers. Further, generic algorithms acting on this arrow container are systematically used to provide natural geometric operations on the topology and also, through duality, on the data. Finally, coverings and duality are used to encode not only individual meshes, but all types of hierarchies underlying PDE data structures, including multigrid and mesh partitions. In order to demonstrate the usefulness of the framework, we show how the mesh partition data can be represented and manipulated using the same fundamental mechanisms used to represent meshes. We present the complete description of an algorithm to encode a mesh partition and then distribute a mesh, which is independent of the mesh dimension, element shape, or embedding. Moreover, data associated with the mesh can be similarly distributed with exactly the same algorithm. The use of a high level of abstraction within the Sieve leads to several benefits in terms of code reuse, simplicity, and extensibility. We discuss these benefits and compare our approach to other existing mesh libraries.


2017 ◽  
Vol 56 (8) ◽  
pp. 2376-2412 ◽  
Author(s):  
El-Mahdy M. Ameen ◽  
Hesham A. Ali ◽  
Mofreh M. Salem ◽  
Mahmoud Badawy

2021 ◽  
Vol 1827 (1) ◽  
pp. 012142
Author(s):  
Xiaonan Liu ◽  
Le Xu ◽  
Chunchao Hu ◽  
Lei Jin

2020 ◽  
Vol 6 (1) ◽  
pp. 1
Author(s):  
Derisma Derisma

User experience is a term for the experience of users in having an easiness and efficiency in the interaction between humans and computers. CodeSaya is an easy, fun, and free place to learn about coding. There are some Programming Languages which can be learned. This research aimed to analyze the effectiveness of the codesaya.com website to learn the basics of programming by using a measurement method of the User Experience Questionnaire (UEQ). There are six examined scales, namely attractiveness, perspicuity, efficiency, dependability, stimulation, and novelty. The testing results showed that those six scales positively affected the students' attentions to use the programming framework with 1.722 of attractiveness score, 1.456 of perspicuity score, 1.718 of efficiency score, 1.46 of dependability score, and 1.44 of stimulation score, these scores showed that the five scales were at a high level, while novelty was at a moderate level with 1.147 of the score. According to the whole data processing and analysis were done in this study, it can be concluded that CodeSaya Website can improve the learning effectiveness of Programming Languages.


2014 ◽  
Vol 2014 ◽  
pp. 1-12 ◽  
Author(s):  
Claudia Misale ◽  
Giulio Ferrero ◽  
Massimo Torquati ◽  
Marco Aldinucci

In this paper, we advocate high-level programming methodology for next generation sequencers (NGS) alignment tools for both productivity and absolute performance. We analyse the problem of parallel alignment and review the parallelisation strategies of the most popular alignment tools, which can all be abstracted to a single parallel paradigm. We compare these tools to their porting onto the FastFlow pattern-based programming framework, which provides programmers with high-level parallel patterns. By using a high-level approach, programmers are liberated from all complex aspects of parallel programming, such as synchronisation protocols, and task scheduling, gaining more possibility for seamless performance tuning. In this work, we show some use cases in which, by using a high-level approach for parallelising NGS tools, it is possible to obtain comparable or even better absolute performance for all used datasets.


Sign in / Sign up

Export Citation Format

Share Document