96 results on '"linked lists"'
Search Results
2. Multi-State Merkle Patricia Trie (MSMPT): High-Performance Data Structures for Multi-Query Processing Based on Lightweight Blockchain
- Author
-
Viddi Mardiansyah, Abdul Muis, and Riri Fitri Sari
- Subjects
Blockchains ,blockchain data structure ,lightweight blockchain ,linked lists ,multi-state Merkle Patricia Trie ,Electrical engineering. Electronics. Nuclear engineering ,TK1-9971 - Abstract
Blockchain technology has emerged as a promising solution to secure and decentralized platforms. However, blockchain technology has high computational requirements, latency, and low throughput, particularly for single or multi-query processing. Lightweight blockchain has emerged as a solution to overcome these problems. It addresses performance and efficiency issues and can provide convenience in the query process. This paper proposed a novel high-performance data structure for multi-query processing based on a lightweight blockchain, namely Multi-State Merkle Patricia Trie (MSMPT). MSMPT combines Merkle Patricia Trie (MPT) based indexing and linked-list storage to achieve high performance. MPT has been used on the Ethereum network with a Key-Value database approach. The key field in this proposal is used as crucial user data. The value field is changed to the head of the linked list, and the following data elements will store a summary of the data based on the specified category. In this paper, a blockchain simulator was built to discover the performance of the proposed systems. This simulator will simulate creating blocks in a blockchain network using existing and modified blockchain data structures. The blocks created will be compared using the query process from the conventional and proposed systems. The experimental findings demonstrate that MSMPT outperforms existing blockchain-based data structures by requiring only about one millisecond in query processing performance and less than 500 bytes of additional storage. The MSMPT provides a promising solution for efficient and scalable data management in lightweight blockchain, particularly for multi-query processing.
- Published
- 2023
- Full Text
- View/download PDF
3. Visualization of Data Structures with Animation of Code
- Author
-
Sparsha, P., Harish, P. B., Kumar, N. S., Xhafa, Fatos, Series Editor, Raj, Jennifer S., editor, Iliyasu, Abdullah M., editor, Bestak, Robert, editor, and Baig, Zubair A., editor
- Published
- 2021
- Full Text
- View/download PDF
4. TSLQueue: An Efficient Lock-Free Design for Priority Queues
- Author
-
Rukundo, Adones, Tsigas, Philippas, Goos, Gerhard, Founding Editor, Hartmanis, Juris, Founding Editor, Bertino, Elisa, Editorial Board Member, Gao, Wen, Editorial Board Member, Steffen, Bernhard, Editorial Board Member, Woeginger, Gerhard, Editorial Board Member, Yung, Moti, Editorial Board Member, Sousa, Leonel, editor, Roma, Nuno, editor, and Tomás, Pedro, editor
- Published
- 2021
- Full Text
- View/download PDF
5. List.MID: A MIDI-Based Benchmark for Evaluating RDF Lists
- Author
-
Meroño-Peñuela, Albert, Daga, Enrico, Goos, Gerhard, Founding Editor, Hartmanis, Juris, Founding Editor, Bertino, Elisa, Editorial Board Member, Gao, Wen, Editorial Board Member, Steffen, Bernhard, Editorial Board Member, Woeginger, Gerhard, Editorial Board Member, Yung, Moti, Editorial Board Member, Ghidini, Chiara, editor, Hartig, Olaf, editor, Maleshkova, Maria, editor, Svátek, Vojtěch, editor, Cruz, Isabel, editor, Hogan, Aidan, editor, Song, Jie, editor, Lefrançois, Maxime, editor, and Gandon, Fabien, editor
- Published
- 2019
- Full Text
- View/download PDF
6. Ghosts for Lists: From Axiomatic to Executable Specifications
- Author
-
Loulergue, Frédéric, Blanchard, Allan, Kosmatov, Nikolai, Hutchison, David, Series Editor, Kanade, Takeo, Series Editor, Kittler, Josef, Series Editor, Kleinberg, Jon M., Series Editor, Mattern, Friedemann, Series Editor, Mitchell, John C., Series Editor, Naor, Moni, Series Editor, Pandu Rangan, C., Series Editor, Steffen, Bernhard, Series Editor, Terzopoulos, Demetri, Series Editor, Tygar, Doug, Series Editor, Weikum, Gerhard, Series Editor, Dubois, Catherine, editor, and Wolff, Burkhart, editor
- Published
- 2018
- Full Text
- View/download PDF
7. Ghosts for Lists: A Critical Module of Contiki Verified in Frama-C
- Author
-
Blanchard, Allan, Kosmatov, Nikolai, Loulergue, Frédéric, Hutchison, David, Series Editor, Kanade, Takeo, Series Editor, Kittler, Josef, Series Editor, Kleinberg, Jon M., Series Editor, Mattern, Friedemann, Series Editor, Mitchell, John C., Series Editor, Naor, Moni, Series Editor, Pandu Rangan, C., Series Editor, Steffen, Bernhard, Series Editor, Terzopoulos, Demetri, Series Editor, Tygar, Doug, Series Editor, Weikum, Gerhard, Series Editor, Dutle, Aaron, editor, Muñoz, César, editor, and Narkawicz, Anthony, editor
- Published
- 2018
- Full Text
- View/download PDF
8. Aplicación móvil para apoyar el aprendizaje de estructuras de datos dinámicas utilizando realidad aumentada.
- Author
-
DÍAZ, Edgardo J., FRANCO, David A., and MARTELO, Raúl J.
- Abstract
Copyright of Revista Espacios is the property of Talleres de Impresos Oma and its content may not be copied or emailed to multiple sites or posted to a listserv without the copyright holder's express written permission. However, users may print, download, or email articles for individual use. This abstract may be abridged. No warranty is given about the accuracy of the copy. Users should refer to the original published version of the material for the full abstract. (Copyright applies to all Abstracts.)
- Published
- 2020
- Full Text
- View/download PDF
9. Practical concurrent unrolled linked lists using lazy synchronization.
- Author
-
Platz, Kenneth, Mittal, Neeraj, and Venkatesan, S.
- Subjects
- *
DATA structures , *SYNCHRONIZATION - Abstract
Linked lists and other list-based sets are some of the most ubiquitous data structures in computer science. They are useful in their own right and are frequently used as building blocks in other data structures. A linked list can be "unrolled" to combine multiple keys in each node; this improves storage density and overall performance. This organization also allows an operation to skip over nodes which cannot contain a key of interest. This work introduces a new high-performance concurrent unrolled linked list with a lazy synchronization strategy. Most write operations under this strategy can complete by locking a single node. Experiments show up to 300% improvement over other concurrent list-based sets. [ABSTRACT FROM AUTHOR]
- Published
- 2020
- Full Text
- View/download PDF
10. RIP Linked List
- Author
-
Sonntag, Benoît, Colnet, Dominique, Laboratoire Lorrain de Recherche en Informatique et ses Applications (LORIA), and Institut National de Recherche en Informatique et en Automatique (Inria)-Université de Lorraine (UL)-Centre National de la Recherche Scientifique (CNRS)
- Subjects
FOS: Computer and information sciences ,Computer Science - Data Structures and Algorithms ,[INFO.INFO-DS]Computer Science [cs]/Data Structures and Algorithms [cs.DS] ,Data Structures and Algorithms (cs.DS) ,linked lists ,memory cache ,arrays ,performance - Abstract
Linked lists have always been an excellent teaching tool in programming.The question arises as to whether it is really worthwhile to use linked lists in the programs we run on a daily basis.It seems that in most cases array-based data structures are more advantageous, both in terms of memory space and, most importantly, in terms of execution speed.While it is easy to calculate the complexity of the operations, what about the actual execution efficiency?In this paper we try to answer this question by introducing a new benchmark.Our survey compares several linked-list implementations with some array-based implementations.We also propose a new array-based data structure that is well suited for list operations.; Les listes chaînées constituent depuis toujours un excellent exercice d'apprentissage de la programmation.En ce qui concerne l'utilisation des listes chaînées dans les programmes que nous utilisons au jour le jour, la question se pose de savoir s'il est vraiment rentable ou non d'utiliser des listes chaînées.Il semble que, dans la plupart des cas, les structures de données à base de tableaux sont plus avantageuses à la fois en terme de place mémoire, mais aussi et surtout en terme de vitesse d'exécution.Même s'il est facile de calculer la complexité des opérations, qu'en est-il vraiment de l'efficacité en cas d'exécution réelle?Ici, nous cherchons à répondre à cette question en introduisant un nouveau benchmark.Notre étude confronte différentes implantation de liste chaînée avec quelques implantations à base de tableaux.Nous proposons également une nouvelle structure d'implantation à base de tableaux bien adaptée aux opérations propres aux listes.
- Published
- 2023
11. Practical Concurrent Unrolled Linked Lists Using Lazy Synchronization
- Author
-
Platz, Kenneth, Mittal, Neeraj, Venkatesan, Subbarayan, Hutchison, David, Series editor, Kanade, Takeo, Series editor, Kittler, Josef, Series editor, Kleinberg, Jon M., Series editor, Kobsa, Alfred, Series editor, Mattern, Friedemann, Series editor, Mitchell, John C., Series editor, Naor, Moni, Series editor, Nierstrasz, Oscar, Series editor, Pandu Rangan, C., Series editor, Steffen, Bernhard, Series editor, Terzopoulos, Demetri, Series editor, Tygar, Doug, Series editor, Weikum, Gerhard, Series editor, Aguilera, Marcos K., editor, Querzoni, Leonardo, editor, and Shapiro, Marc, editor
- Published
- 2014
- Full Text
- View/download PDF
12. Empowering Programming Student through Reflective Practice.
- Author
-
Goede, Roelien
- Subjects
- *
REFLECTIVE learning , *COMPUTER software developers , *COMPUTER programming education , *JAVA programming language , *ALGORITHMS - Abstract
Unintended consequences of information systems lead to failed projects and social harm. Software developers do not reflect enough on the consequences of their actions when they develop software. Reflection should be part of the software development process and should be taught to information system students. The aim of this paper is to propose an innovative learning strategy incorporating reflective practice to empower students to design and implement successful linked list algorithms in Java. The innovative method was developed over 3 years using action research. The method enables students to understand the abstraction process required in algorithm design independent of Java code development while reflecting before, during, and after the event. Information systems students become accustomed to reflection in practice while they study. This will empower them to become reflective practitioners in industry who are more accountable for their actions. [ABSTRACT FROM AUTHOR]
- Published
- 2015
- Full Text
- View/download PDF
13. Fast and Memory Efficient 2-D Connected Components Using Linked Lists of Line Segments.
- Author
-
De Bock, Johan and Philips, Wilfried
- Subjects
- *
IMAGE processing , *ALGORITHMS , *DATA structures , *IMAGE analysis , *IMAGE compression standards , *ELECTRONIC data processing - Abstract
In this paper we present a more efficient approach to the problem of finding the connected components in binary images. In conventional connected components algorithms, the main data structure to compute and store the connected components is the region label image. We replace the region label image with a singly-linked list of line segments (or runs) for each region. This enables us to design a very fast and memory efficient connected components algorithm. Most conventional algorithms require (at least) two raster scans. Those that only need one raster scan, require irregular and unbounded image access. The proposed algorithm is a single pass regular access algorithm and only requires access to the three most recently processed image lines at any given time. Experimental results demonstrate that our algorithm is considerably faster than the fastest conventional algorithm. Additionally, our novel region coding data structure uses much less memory in typical cases than the traditional region label image. Even in worst case situations the processing time of our algorithm is linear with the number of pixels in an image. [ABSTRACT FROM AUTHOR]
- Published
- 2010
- Full Text
- View/download PDF
14. Identifying Students' Misconceptions in Data Structures and Algorithms.
- Author
-
AYDOGAN, TUNCAY and CAN, OZLEM
- Subjects
DATA structures ,ALGORITHMS ,COMPUTER science education ,STUDY & teaching of electronic data processing ,INFORMATION technology - Abstract
Data Structures and Algorithms (DSA) is one of the core courses of Computer Science (CS) education. The course has several abstract concepts. In this study, misconceptions made by students relating to the Lists, also known as Linked Lists (LL), have been identified. The main and sub-problems were first identified, and then a three-tier multiple-choice conceptual understanding diagnostic test (or three-tier test) was prepared and administered to 291 students. The results were analysed and information about 14 misconceptions were obtained. [ABSTRACT FROM AUTHOR]
- Published
- 2010
15. The Usefulness of Multilevel Hash Tables with Multiple Hash Functions in Large Databases.
- Author
-
Akinwale, A. T. and Ibharalu, F. T.
- Subjects
JAVA programming language ,PROGRAMMING languages ,COMPUTER programming ,QUERY languages (Computer science) ,COMPUTER software ,MATHEMATICAL functions - Abstract
In this work, attempt is made to select three good hash functions which uniformly distribute hash values that permute their internal states and allow the input bits to generate different output bits. These functions are used in different levels of hash tables that are coded in Java Programming Language and a quite number of data records serve as primary data for testing the performances. The result shows that the two-level hash tables with three different hash functions give a superior performance over one-level hash table with two hash functions or zero-level hash table with one function in term of reducing the conflict keys and quick lookup for a particular element. The result assists to reduce the complexity of join operation in query language from O( n² ) to O( 1 ) by placing larger query. result, if any, in multilevel hash tables with multiple hash functions and generate shorter query result. [ABSTRACT FROM AUTHOR]
- Published
- 2009
16. DETERMINISTIC JUMPLISTS.
- Author
-
Elmasry, Amr
- Subjects
DATA structures ,ELECTRONIC data processing ,COMPUTER programming - Abstract
Focuses on a deterministic version of the randomized jumplists. Searches in worst-case logarithmic time, insertions and deletions in amortized logarithmic time; Extra jump pointer per node.
- Published
- 2005
17. A General Meta-Heuristic Based Solver for Combinatorial Optimisation Problems.
- Author
-
Randall, Marcus and Abramson, David
- Abstract
In recent years, there have been many studies in which tailored heuristics and meta-heuristics have been applied to specific optimisation problems. These codes can be extremely efficient, but may also lack generality. In contrast, this research focuses on building a general-purpose combinatorial optimisation problem solver using a variety of meta-heuristic algorithms including Simulated Annealing and Tabu Search. The system is novel because it uses a modelling environment in which the solution is stored in dense dynamic list structures, unlike a more conventional sparse vector notation. Because of this, it incorporates a number of neighbourhood search operators that are normally only found in tailored codes and it performs well on a range of problems. The general nature of the system allows a model developer to rapidly prototype different problems. The new solver is applied across a range of traditional combinatorial optimisation problems. The results indicate that the system achieves good performance in terms of solution quality and runtime. [ABSTRACT FROM AUTHOR]
- Published
- 2001
- Full Text
- View/download PDF
18. Logic against Ghosts: Comparison of Two Proof Approaches for a List Module
- Author
-
Nikolai Kosmatov, Allan Blanchard, Frédéric Loulergue, Self-organizing Future Ubiquitous Network (FUN), Inria Lille - Nord Europe, Institut National de Recherche en Informatique et en Automatique (Inria)-Institut National de Recherche en Informatique et en Automatique (Inria), Laboratoire Sûreté des Logiciels (LSL), Département Ingénierie Logiciels et Systèmes (DILS), Laboratoire d'Intégration des Systèmes et des Technologies (LIST), Direction de Recherche Technologique (CEA) (DRT (CEA)), Commissariat à l'énergie atomique et aux énergies alternatives (CEA)-Commissariat à l'énergie atomique et aux énergies alternatives (CEA)-Direction de Recherche Technologique (CEA) (DRT (CEA)), Commissariat à l'énergie atomique et aux énergies alternatives (CEA)-Commissariat à l'énergie atomique et aux énergies alternatives (CEA)-Université Paris-Saclay-Laboratoire d'Intégration des Systèmes et des Technologies (LIST), Commissariat à l'énergie atomique et aux énergies alternatives (CEA)-Commissariat à l'énergie atomique et aux énergies alternatives (CEA)-Université Paris-Saclay, Northern Arizona University [Flagstaff], Laboratoire d'Informatique Fondamentale d'Orléans (LIFO), Université d'Orléans (UO)-Institut National des Sciences Appliquées - Centre Val de Loire (INSA CVL), Institut National des Sciences Appliquées (INSA)-Institut National des Sciences Appliquées (INSA), Laboratoire d'Intégration des Systèmes et des Technologies (LIST (CEA)), and Commissariat à l'énergie atomique et aux énergies alternatives (CEA)-Commissariat à l'énergie atomique et aux énergies alternatives (CEA)-Université Paris-Saclay-Laboratoire d'Intégration des Systèmes et des Technologies (LIST (CEA))
- Subjects
Computer science ,media_common.quotation_subject ,Reliability (computer networking) ,02 engineering and technology ,computer.software_genre ,Frama-C ,020204 information systems ,Formal specification ,operating system ,0202 electrical engineering, electronic engineering, information engineering ,Function (engineering) ,Representation (mathematics) ,Formal verification ,Implementation ,media_common ,formal specification ,Programming language ,[INFO.INFO-LO]Computer Science [cs]/Logic in Computer Science [cs.LO] ,020207 software engineering ,linked lists ,Linked list ,deductive verification ,internet of things ,[INFO.INFO-ES]Computer Science [cs]/Embedded Systems ,[INFO.INFO-OS]Computer Science [cs]/Operating Systems [cs.OS] ,computer - Abstract
International audience; Modern verification projects continue to offer new challenges for formal verification. One of them is the linked list module of Contiki, a popular open-source operating system for the Internet of Things. It has a rich API and uses a particular list representation that make it different from the classical linked list implementations. Being widely used in the OS, the list module is critical for reliability and security. A recent work verified the list module using ghost arrays. This article reports on a new verification effort for this module. Realized in the Frama-C/Wp tool, the new approach relies on logic lists. A logic list provides a convenient high-level view of the linked list. The specifications of all functions are now proved faster and almost all automatically, only a small number of auxiliary lemmas and a couple of assertions being proved interactively in Coq. The proposed specifications are validated by proving a few client functions manipulating lists. During the verification, a more efficient implementation for one function was found and verified. We compare the new approach with the previous effort based on ghost arrays, and discuss the benefits and drawbacks of both techniques.
- Published
- 2019
- Full Text
- View/download PDF
19. Secrets of shopping smart: how-to's, tips, and shortcuts that can help you find what you want fast and at a good price
- Subjects
Online shopping -- Methods ,Shopping -- Planning ,Shopping -- Methods ,Linked lists ,Online shopping ,Company business planning ,Consumer news and advice - Abstract
Whatever your shopping style--diligent researcher, casual browser, or determined time-saver--the current shopping scene holds new and expanding options. You can surf Web sites, leaf through catalogs, and visit every variety [...]
- Published
- 2004
20. Type-extension type tests can be performed in constant time
- Author
-
Cohen, Norman H.
- Subjects
Language Analysis ,Data Structures ,Algorithm ,Functional Programming ,Subroutines ,Code Generator ,Performance Measurement ,Programming Language ,Linked Lists ,Program Development Techniques - Published
- 1991
21. An optimal linked list prefix algorithm on a local memory computer
- Author
-
Han Yijie
- Subjects
Parallel Algorithms ,Graph Theory ,Shared Memory ,Algorithm Analysis ,Mathematical Logic ,Parameters ,RAM ,Linked Lists ,Memory Mapping ,Integer Programming ,Dynamic Programming ,Computational Complexity - Published
- 1991
22. Get your data together; three File Combine macros that overcome the limitations of file linking
- Author
-
Delonas, Nicholas
- Subjects
Tutorial ,Macro ,Spreadsheet Software ,Data Management ,Form Overlay ,Linked Lists ,Linking Loaders ,Programming Instruction ,Disk/File Management Software ,File Reorganization ,Lotus 1-2-3 (Spreadsheet software) -- Usage - Abstract
1-2-3 offers two easy ways to get data from one file to another: file linking and file combining. File linking is simple. You just enter a formula with the following […]
- Published
- 1991
23. Using program slicing in software maintenance
- Author
-
Gallagher, Keith Brian and Lyle, James R.
- Subjects
Software Maintenance ,Linked Lists ,Semantics ,Problem Solving ,Software Modification ,Application Development Software ,Modular Programming ,Models ,Programming - Published
- 1991
24. Linked-list visualization for debugging
- Author
-
Shimomura, Takao and Isoda, Sadahiro
- Subjects
Debugging/testing software ,Program Testing Tools ,Visualization ,Linked Lists ,Tutorial ,New Technique ,UNIX ,Tree Structures ,Graphics System - Published
- 1991
25. Integrating Image Computation in Undergraduate Level Data-Structure Education.
- Author
-
Sarkar, Sudeep and Goldgof, Dmitry
- Abstract
There is a growing need for expertise both in image analysis and in software engineering. To date, these two areas have been taught separately in an undergraduate computer and information science curriculum. However, we have found that introduction to image analysis can be easily integrated in data-structure courses without detracting from the original goal of teaching data structures. Some of the image processing tasks offer a natural way to introduce basic data structures such as arrays, queues, stacks, trees and hash tables. Not only does this integrated strategy expose the students to image related manipulations at an early stage of the curriculum but it also imparts cohesiveness to the data-structure assignments and brings them closer to real life. In this paper we present a set of programming assignments that integrates undergraduate data-structure education with image processing tasks. These assignments can be incorporated in existing data-structure courses with low time and software overheads. We have used these assignment sets thrice: once in a 10-week duration data-structure course at the University of California, Santa Barbara and the other two times in 15-week duration courses at the University of South Florida, Tampa. [ABSTRACT FROM AUTHOR]
- Published
- 1998
- Full Text
- View/download PDF
26. Ghosts for Lists: from Axiomatic to Executable Specifications
- Author
-
Frédéric Loulergue, Nikolai Kosmatov, Allan Blanchard, Northern Arizona University [Flagstaff], Laboratoire d'Informatique Fondamentale d'Orléans (LIFO), Université d'Orléans (UO)-Institut National des Sciences Appliquées - Centre Val de Loire (INSA CVL), Institut National des Sciences Appliquées (INSA)-Institut National des Sciences Appliquées (INSA), Self-organizing Future Ubiquitous Network (FUN), Inria Lille - Nord Europe, Institut National de Recherche en Informatique et en Automatique (Inria)-Institut National de Recherche en Informatique et en Automatique (Inria), Laboratoire Sûreté des Logiciels (LSL), Département Ingénierie Logiciels et Systèmes (DILS), Laboratoire d'Intégration des Systèmes et des Technologies (LIST (CEA)), Direction de Recherche Technologique (CEA) (DRT (CEA)), Commissariat à l'énergie atomique et aux énergies alternatives (CEA)-Commissariat à l'énergie atomique et aux énergies alternatives (CEA)-Direction de Recherche Technologique (CEA) (DRT (CEA)), Commissariat à l'énergie atomique et aux énergies alternatives (CEA)-Commissariat à l'énergie atomique et aux énergies alternatives (CEA)-Université Paris-Saclay-Laboratoire d'Intégration des Systèmes et des Technologies (LIST (CEA)), Commissariat à l'énergie atomique et aux énergies alternatives (CEA)-Commissariat à l'énergie atomique et aux énergies alternatives (CEA)-Université Paris-Saclay, Self-organizing Future Ubiquitous Network ( FUN ), Institut National de Recherche en Informatique et en Automatique ( Inria ) -Institut National de Recherche en Informatique et en Automatique ( Inria ), Laboratoire Sûreté des Logiciels ( LSL ), Département Ingénierie Logiciels et Systèmes ( DILS ), Laboratoire d'Intégration des Systèmes et des Technologies ( LIST ), Commissariat à l'énergie atomique et aux énergies alternatives ( CEA ) -Université Paris-Saclay-Commissariat à l'énergie atomique et aux énergies alternatives ( CEA ) -Université Paris-Saclay-Laboratoire d'Intégration des Systèmes et des Technologies ( LIST ), Commissariat à l'énergie atomique et aux énergies alternatives ( CEA ) -Université Paris-Saclay-Commissariat à l'énergie atomique et aux énergies alternatives ( CEA ) -Université Paris-Saclay, Laboratoire d'Intégration des Systèmes et des Technologies (LIST), and Commissariat à l'énergie atomique et aux énergies alternatives (CEA)-Commissariat à l'énergie atomique et aux énergies alternatives (CEA)-Université Paris-Saclay-Laboratoire d'Intégration des Systèmes et des Technologies (LIST)
- Subjects
Computer science ,02 engineering and technology ,computer.software_genre ,Frama-C ,runtime verication ,0202 electrical engineering, electronic engineering, information engineering ,[ INFO.INFO-ES ] Computer Science [cs]/Embedded Systems ,Formal verification ,Axiom ,Programming language ,business.industry ,Runtime verification ,executable specication ,[INFO.INFO-LO]Computer Science [cs]/Logic in Computer Science [cs.LO] ,020207 software engineering ,linked lists ,Specification language ,Linked list ,computer.file_format ,Predicate (mathematical logic) ,deductive verification ,internet of things ,[ INFO.INFO-OS ] Computer Science [cs]/Operating Systems [cs.OS] ,executable specification ,runtime verification ,deductive verication ,020201 artificial intelligence & image processing ,[ INFO.INFO-LO ] Computer Science [cs]/Logic in Computer Science [cs.LO] ,[INFO.INFO-ES]Computer Science [cs]/Embedded Systems ,Executable ,[INFO.INFO-OS]Computer Science [cs]/Operating Systems [cs.OS] ,Internet of Things ,business ,computer - Abstract
International audience; Internet of Things (IoT) applications are becoming increasingly critical and require formal verification. Our recent work presented formal verification of the linked list module of Contiki, an OS for IoT. It relies on a parallel view of a linked list via a companion ghost array and uses an inductive predicate to link both views. In this work, a few interactively proved lemmas allow for the automatic verification of the list functions specifications, expressed in the acsl specification language and proved with the Frama-C/Wp tool. In a broader verification context, especially as long as the whole system is not yet formally verified, it would be very useful to use runtime verification , in particular, to test client modules that use the list module. It is not possible with the current specifications, which include an inductive predicate and axiomatically defined functions. In this early-idea paper we show how to define a provably equivalent non-inductive predicate and a provably equivalent non-axiomatic function that belong to the executable subset e-acsl of acsl and can be transformed into executable C code. Finally, we propose an extension of Frama-C to handle both axiomatic specifications for deductive verification and executable specifications for runtime verification.
- Published
- 2018
- Full Text
- View/download PDF
27. Ghosts for Lists: A Critical Module of Contiki Verified in Frama-C
- Author
-
Nikolai Kosmatov, Allan Blanchard, Frédéric Loulergue, Self-organizing Future Ubiquitous Network (FUN), Inria Lille - Nord Europe, Institut National de Recherche en Informatique et en Automatique (Inria)-Institut National de Recherche en Informatique et en Automatique (Inria), Commissariat à l'énergie atomique et aux énergies alternatives (CEA), Northern Arizona University [Flagstaff], Laboratoire d'Informatique Fondamentale d'Orléans (LIFO), Institut National des Sciences Appliquées - Centre Val de Loire (INSA CVL), Institut National des Sciences Appliquées (INSA)-Institut National des Sciences Appliquées (INSA)-Université d'Orléans (UO), Université d'Orléans (UO)-Institut National des Sciences Appliquées - Centre Val de Loire (INSA CVL), and Institut National des Sciences Appliquées (INSA)-Institut National des Sciences Appliquées (INSA)
- Subjects
Computer science ,0102 computer and information sciences ,02 engineering and technology ,Mathematical proof ,computer.software_genre ,01 natural sciences ,Frama-C ,operating system ,0202 electrical engineering, electronic engineering, information engineering ,Representation (mathematics) ,Implementation ,Formal verification ,business.industry ,Programming language ,Proof assistant ,[INFO.INFO-LO]Computer Science [cs]/Logic in Computer Science [cs.LO] ,020207 software engineering ,linked lists ,Linked list ,deductive verification ,internet of things ,010201 computation theory & mathematics ,[INFO.INFO-ES]Computer Science [cs]/Embedded Systems ,[INFO.INFO-OS]Computer Science [cs]/Operating Systems [cs.OS] ,Internet of Things ,business ,computer - Abstract
International audience; Internet of Things (IoT) applications are becoming increasingly critical and require rigorous formal verification. In this paper we target Contiki, a widely used open-source OS for IoT, and present a verification case study of one of its most critical modules: that of linked lists. Its API and list representation differ from the classical linked list implementations, and are particularly challenging for deductive verification. The proposed verification technique relies on a parallel view of a list through a companion ghost array. This approach makes it possible to perform most proofs automatically using the Frama-C/WP tool, only a small number of auxiliary lemmas being proved interactively in the Coq proof assistant. We present an elegant segment-based reasoning over the companion array developed for the proof. Finally, we validate the proposed specification by proving a few functions manipulating lists.
- Published
- 2018
- Full Text
- View/download PDF
28. Index-based hyperlinks
- Author
-
Hartman, John H., Proebsting, Todd A., and Sundaram, Rajesh
- Subjects
World Wide Web ,Information storage and retrieval -- Methods ,Linked lists ,Business ,Computers and office automation industries - Abstract
A textual hyperlink using the concept of indices has been developed to facilitate the search of an HTML documents. The index-based hyperlinks prove superior to other textual hyperlink schemes due to its ability to associate attributes with text phrases. This facilitates the search activity for the user since only a small relationship need to be effected between the phrase or subject with the uniform resource locator.
- Published
- 1997
29. Strategies for better linked lists; a C toolkit that saves time and memory
- Author
-
Hester, Garyl
- Subjects
C Programming Language ,Linked Lists ,Multilinked Lists ,Tutorial - Published
- 1993
30. FROM ORDER TO ERRATICITY
- Author
-
Piccinini, Lc and Taverna, M
- Subjects
random walk ,order ,entropy ,linked lists ,erraticity - Published
- 2017
31. Data structures: part 13: Queues (continued)
- Author
-
Jaeschke, Rex
- Subjects
C# (Programming language) ,Data structures ,Linked lists ,C# (Programming language) - Abstract
Last month we introduced queues and showed how they can be represented in arrays. This month we'll see how they can be implemented in a linked list. Representing Queues Using […]
- Published
- 1992
32. It's a multithreaded world, part 1
- Author
-
Northrup, Charles J.
- Subjects
Multithreading ,Operating System ,Applications Programming ,Linked Lists ,Multitasking ,Scheduling ,Semaphores ,Execution Time ,Tutorial ,Multithreading -- Usage ,Operating systems -- Design and construction - Published
- 1992
33. Data structures: part 8
- Author
-
Jaeschke, Rex
- Subjects
C# (Programming language) ,List processing ,Data structures ,Linked lists ,C# (Programming language) - Abstract
Circular Lists In previous installments I have presented both singly- and doubly linked lists. All of these lists have used some sort of sentinel to indicate the end of the […]
- Published
- 1991
34. Data structures: part 6
- Author
-
Jaeschke, Rex
- Subjects
C# (Programming language) ,Data structures ,Codes ,Linked lists ,C# (Programming language) - Abstract
The two previous installments implemented a linked list in an array. This installment will construct the list using nodes allocated by malloc instead. To accommodate the new approach and to […]
- Published
- 1991
35. Data structures
- Author
-
Jaeschke, Rex
- Subjects
Software quality ,C# (Programming language) ,Software ,Data structures ,Linked lists ,C# (Programming language) - Abstract
Last month in Part 4 1 showed the first half of a program to implement a singly linked list in an array of structures. This installment presents the rest of […]
- Published
- 1991
36. OLE is on the way
- Author
-
Ray, Garry
- Subjects
Embedded system ,System on a chip ,Future of computing ,Preview of coming year ,Product enhancement ,Lotus Development Corp. -- Product development -- Product enhancement ,Microsoft Windows (GUI) -- Product enhancement ,Compatible hardware -- Product enhancement -- Product development ,Upward/downward compatibility -- Product enhancement -- Product development ,Compatible software -- Product enhancement -- Product development ,Linked lists ,Forward compatibility -- Product enhancement -- Product development ,Embedded systems -- Product development -- Product enhancement ,Technological forecasting - Abstract
Like the half-decade long 'Year of the LAN,' the search for fully integrated PC software has taken longer than expected. Part of the reason is that today's notion of 'integration' […]
- Published
- 1991
37. Rewriting modules as classes
- Author
-
Saks, Dan
- Subjects
Applications Programming ,C Programming Language ,Code Conversion ,Modules ,User Interface ,Binary Trees ,Linked Lists ,Programming Instruction - Published
- 1991
38. Buddhist Central Asian Invention of the Method
- Author
-
Beckwith, Christopher I., author
- Published
- 2012
- Full Text
- View/download PDF
39. Tuning up HyperCard's database engine: linked lists for greater performance
- Author
-
Elliott, Jeff
- Subjects
Tutorial ,DBMS ,Optimization ,Programming Instruction ,Stacks ,Linked Lists ,HyperCard (Multimedia authoring software) -- Usage - Published
- 1993
40. The UNIX filesystem, part 2
- Author
-
Bourne, Philip E.
- Subjects
UNIX ,File organization ,Linked lists ,Unix - Abstract
Last time, we explored the UNIX fast filesystem, as used by ULTRIX, in some detail (see 'The UNIX Filesystem, Part 1,' September 1991). We discussed how the partitions are arranged […]
- Published
- 1991
41. Analytical Study on the Kinematics and Dynamics of a Multi-Link System
- Subjects
Linked Lists ,Kinematics ,Motor Algebra ,Multi-link System ,Dynamics - Abstract
A multi-link system is defined as any finite number of rigid bodies interconnected by pairs with various constraints. Typical examples are the mechanisms in machines and limbs of humans. Recently, there is a need for parallel-mechanisms which have the advantages of maneuverability, lightness and stiffness. Many studies on them have been performed. Also, there are many studies on the motion control and motion analysis of living mechanisms. This paper describes an analytical approach to the kinematics and dynamics of a multi-link system using motor algebra. The redundant degrees of freedom arising from the analysis on the velocity motor, acceleration motor and force-moment motor are discussed. Throughout this paper, all the solutions of analysis are obtained by the linear calculation algorithms, such as QR decomposition, Gaussian elimination and backsubstitution. The data structure and the algorithms are based on linked lists.
- Published
- 1995
42. Verification of device drivers and intelligent controllers
- Author
-
David Monniaux, Laboratoire d'informatique de l'école normale supérieure (LIENS), Département d'informatique - ENS Paris (DI-ENS), École normale supérieure - Paris (ENS-PSL), Université Paris sciences et lettres (PSL)-Université Paris sciences et lettres (PSL)-Institut National de Recherche en Informatique et en Automatique (Inria)-Centre National de la Recherche Scientifique (CNRS)-École normale supérieure - Paris (ENS-PSL), Université Paris sciences et lettres (PSL)-Université Paris sciences et lettres (PSL)-Institut National de Recherche en Informatique et en Automatique (Inria)-Centre National de la Recherche Scientifique (CNRS), Christoph M. Kirsch, Reinhard Wilhelm, École normale supérieure - Paris (ENS Paris), Université Paris sciences et lettres (PSL)-Université Paris sciences et lettres (PSL)-Centre National de la Recherche Scientifique (CNRS), and Université Paris sciences et lettres (PSL)-Université Paris sciences et lettres (PSL)-Institut National de Recherche en Informatique et en Automatique (Inria)-Centre National de la Recherche Scientifique (CNRS)-École normale supérieure - Paris (ENS Paris)
- Subjects
Computer science ,Controller (computing) ,[INFO.INFO-SE]Computer Science [cs]/Software Engineering [cs.SE] ,02 engineering and technology ,0202 electrical engineering, electronic engineering, information engineering ,Interleaved memory ,direct memory access ,USB ,asynchronous ,parallelism ,Host controller interface ,Distributed shared memory ,[INFO.INFO-PL]Computer Science [cs]/Programming Languages [cs.PL] ,business.industry ,Uniform memory access ,linked lists ,020207 software engineering ,Semiconductor memory ,Extended memory ,ACM D.2.4 ,D.4.5 ,F.3.1 ,Memory management ,Device driver ,Embedded system ,[INFO.INFO-ES]Computer Science [cs]/Embedded Systems ,020201 artificial intelligence & image processing ,[INFO.INFO-OS]Computer Science [cs]/Operating Systems [cs.OS] ,verification ,business ,Computer hardware ,OHCI - Abstract
© ACM, 2007. This is the author's version of the work. It is posted here by permission of ACM for your personal use. Not for redistribution. The definitive version was published in EMSOFT 2007.; International audience; The soundness of device drivers generally cannot be verified in isolation, but has to take into account the reactions of the hardware devices. In critical embedded systems, interfaces often were simple "volatile" variables, and the interface specification typically a list of bounds on these variables. Some newer systems use "intelligent" controllers that handle dynamic worklists in shared memory and perform direct memory accesses, all asynchronously from the main processor. Thus, it is impossible to truly verify the device driver without taking the intelligent device into account, because incorrect programming of the device can lead to dire consequences, such as memory zones being erased. We have successfully verified a device driver extracted from a critical industrial system, asynchronously combined with a model for a USB OHCI controller. This paper studies this case, as well as introduces a model and analysis techniques for this asynchronous composition.
- Published
- 2007
- Full Text
- View/download PDF
43. Programs with Lists are Counter Automata
- Author
-
Tomáš Vojnar, Ahmed Bouajjani, Radu Iosif, Pierre Moro, Marius Bozga, Peter Habermehl, Moro, Pierre, Springer, Laboratoire d'informatique Algorithmique : Fondements et Applications (LIAFA), Université Paris Diderot - Paris 7 (UPD7)-Centre National de la Recherche Scientifique (CNRS), VERIMAG (VERIMAG - IMAG), Centre National de la Recherche Scientifique (CNRS)-Institut National Polytechnique de Grenoble (INPG)-Institut polytechnique de Grenoble - Grenoble Institute of Technology (Grenoble INP )-Université Joseph Fourier - Grenoble 1 (UJF), Faculty of Information Technology [Brno] (FIT / BUT), Brno University of Technology [Brno] (BUT), Centre National de la Recherche Scientifique (CNRS)-Université Paris Diderot - Paris 7 (UPD7), Université Joseph Fourier - Grenoble 1 (UJF)-Institut National Polytechnique de Grenoble (INPG)-Centre National de la Recherche Scientifique (CNRS)-Université Grenoble Alpes (UGA), Automates et Applications [LIAFA], Institut de Recherche en Informatique Fondamentale (IRIF (UMR_8243)), Université Paris Diderot - Paris 7 (UPD7)-Centre National de la Recherche Scientifique (CNRS)-Université Paris Diderot - Paris 7 (UPD7)-Centre National de la Recherche Scientifique (CNRS), Faculty of Information Technology [Brno] (FIT), Brno University of Technology [Brno], ANR-05-RNTL-0002,AVERILES,Analyse et vérification de logiciels embarqués avec structures de mémoire dynamique(2005), and ACI projet Securité Informatique the Czech Grant Agency (projects GA CR 102/04/0780 and 102/03/D211).
- Subjects
Model checking ,Theoretical computer science ,Computer science ,0102 computer and information sciences ,02 engineering and technology ,computer.software_genre ,01 natural sciences ,Theoretical Computer Science ,Model Checking ,[INFO.INFO-CR]Computer Science [cs]/Cryptography and Security [cs.CR] ,Data link ,020204 information systems ,0202 electrical engineering, electronic engineering, information engineering ,Bisimulation ,Formal verification ,Heap (data structure) ,[INFO.INFO-CR] Computer Science [cs]/Cryptography and Security [cs.CR] ,[INFO.INFO-PL]Computer Science [cs]/Programming Languages [cs.PL] ,Safety and termination ,Programming language ,Counter automata ,ACM ,020207 software engineering ,linked lists ,Linked list ,Linked data ,Abstract interpretation ,Data structure ,Programs with singly-linked lists ,Decidability ,Automaton ,Counter automaton ,010201 computation theory & mathematics ,Hardware and Architecture ,Lists with ordered data ,Automata theory ,[INFO.INFO-ES]Computer Science [cs]/Embedded Systems ,Nested loop join ,verification ,computer ,Computer Science::Formal Languages and Automata Theory ,Software ,Integer (computer science) - Abstract
International audience; We address the problem of verifying programs manipulating one-selector linked data structures. We propose and study in detail an application of counter automata as an accurate abstract model for this problem. We let control states of the counter automata correspond to abstract heap graphs where list segments without sharing are collapsed, and use counters to keep track of the number of elements in these segments. As a significant theoretical result, we show that the obtained counter automata are bisimilar to the original programs. Moreover, from a practical point of view, our translation allows one to apply efficient automatic analysis techniques and tools developed for counter automata (integer programs) in order to verify both safety as well as termination of list-manipulating programs. As another theoretical contribution, we prove that if the control of the generated counter automata does not contain nested loops (i.e., these automata are flat), both safety and termination are de-cidable for the original programs. Subsequently, we generalise our counter-automata-based model to keep track of ordering properties over lists storing ordered data. Finally, we show effectiveness of our approach by verifying automatically safety as well as termination of several sorting programs.
- Published
- 2006
- Full Text
- View/download PDF
44. Verifying Programs with Dynamic 1-Selector-Linked Structures in Regular Model Checking
- Author
-
Tomáš Vojnar, Ahmed Bouajjani, Peter Habermehl, Pierre Moro, Laboratoire d'informatique Algorithmique : Fondements et Applications (LIAFA), Université Paris Diderot - Paris 7 (UPD7)-Centre National de la Recherche Scientifique (CNRS), Faculty of Information Technology [Brno] (FIT / BUT), Brno University of Technology [Brno] (BUT), ACI project Securité Informatique. the Czech Grant Agency, (projects GA CR 102/04/0780 and 102/03/D211)., Springer, and Moro, Pierre
- Subjects
Model checking ,Infinite set ,Theoretical computer science ,Finite-state machine ,Computer science ,Computation ,ACM ,Verification ,linked lists ,020207 software engineering ,0102 computer and information sciences ,02 engineering and technology ,Abstract interpretation ,Data structure ,01 natural sciences ,infinite systems ,Automaton ,Regular Model Checking ,Set (abstract data type) ,[INFO.INFO-CR]Computer Science [cs]/Cryptography and Security [cs.CR] ,010201 computation theory & mathematics ,0202 electrical engineering, electronic engineering, information engineering ,[INFO.INFO-CR] Computer Science [cs]/Cryptography and Security [cs.CR] ,Counterexample - Abstract
International audience; We address the problem of automatic verification of programs with dynamic data structures. We consider the case of sequential, non-recursive programs manipulating 1-selector-linked structures such as traditional linked lists (possibly sharing their tails) and circular lists. We propose an automata-based approach for a symbolic verification of such programs using the regular model checking framework. Given a program, the configurations of the memory are systematically encoded as words over a suitable finite alphabet, potentially infinite sets of configurations are represented by finite-state automata, and statements of the program are automatically translated into finite-state transducers defining regular relations between configurations. Then, abstract regular model checking techniques are applied in order to automatically check safety properties concerning the shape of the computed configurations or relating the input and output configurations. For that, we introduce new techniques for the computation of abstractions of the set of reachable configurations, and to refine these abstractions if spurious counterexamples are detected. Finally, we present experimental results showing the applicability of the approach and its efficiency.
- Published
- 2005
- Full Text
- View/download PDF
45. Analysis of functional programs to detect run-time garbage cells
- Author
-
Inoue, Katsuro, Seki, Hiroyuki, and Yagi, Hikaru
- Subjects
Technology ,Programming Language ,Optimization ,Linked Lists ,Functional Programming ,Compiler/decompiler ,Garbage Collection - Published
- 1988
46. The dynamic process of creating hypertext literature
- Author
-
Harris, Margaret and Cady, Michael
- Subjects
Hypertext ,Computer-Assisted Instruction ,Education ,Scientific Research ,Linked Lists ,Clinton, Maryland ,Hypermedia - Published
- 1988
47. C++ and linked lists
- Author
-
Stevens, Al
- Subjects
C Programming Language ,Linked Lists ,Tutorial ,Program Development Techniques ,Data Structures ,New Technique ,C++ (Program development software) -- Usage - Published
- 1989
48. Checking out libraries
- Author
-
Arnold, Ken
- Subjects
C Programming Language ,Tutorial ,Linked Lists ,Program Library - Abstract
CHECKING OUT LIBRARIES Nobody enjoys having to re-invent the wheel. This is why libraries were invented--so that somebody could do the work once, and then everybody else could avoid it. […]
- Published
- 1988
49. Fundamentals of microprocessor-based designs - part III
- Author
-
Johnson, M. Ray
- Subjects
Sequential Circuits ,Linked Lists ,Buses ,Memory Mapping ,Microprocessor - Published
- 1988
50. Design concepts and considerations in building an OS-2 dynamic-link library
- Author
-
Greenberg, Ross M.
- Subjects
Design ,Dynamic Programming ,Linked Lists ,Library Networks ,OS/2 Extended Edition (Operating system) -- Usage - Abstract
Design Concepts and Considerations in Building an OS/2 Dynamic-Link Library You are in a maze of twisty little passages, all alike. >USE DYNAMIC-LINK LIBRARY I see no DLL here. >MAKE […]
- Published
- 1988
Catalog
Discovery Service for Jio Institute Digital Library
For full access to our library's resources, please sign in.