Programming Language Pragmatics is the most comprehensive programming language textbook available today, with nearly 1000 pages of content in the book, plus hundreds more pages of reference materials and ancillaries online. Michael Scott takes theperspective that language design and language implementation are tightly interconnected, and that neither can be fully understood in isolation. In an approachable, readable style, he discusses more than 50 languages in the context of understanding how code isinterpreted or compiled, providing an organizational framework for learning new languages, regardless of platform. This edition has been thoroughly updated to cover the most recent developments in programming language design and provides both a solid understanding of the most important issues driving software development today
Soft Computing in Smart Manufacturing and Materials explains the role of soft computing in the manufacturing industries. It presents the techniques, concepts and design principles behind smart soft computing, and describes how they can be applied in the development and manufacture of smart materials. It provides perspectives for design and commissioning of intelligent applications, including in health care, agriculture, and production assembly, and reviews the latest intelligent technologies and algorithms related to the methodologies of monitoring and mitigation of sustainable engineering.
Probability for Deep Learning Quantum provides readers with the first book to address probabilistic methods in the deep learning environment and the quantum technological area simultaneously, by using a common platform: the Many-Sorted Algebra (MSA) view. While machine learning is created with a foundation of probability, probability is at the heart of quantum physics as well. It is the cornerstone in quantum applications. These applications include quantum measuring, quantum information theory, quantum communication theory, quantum sensing, quantum signal processing, quantum computing, quantum cryptography, and quantum machine learning. Although some of the probabilistic methods differ in machine learning disciplines from those in the quantum technologies, many techniques are very similar.Probability is introduced in the text rigorously, in Komogorov’s vision. It is however, slightly modified by developing the theory in a Many-Sorted Algebra setting. This algebraic construct is also used in showing the shared structures underlying much of both machine learning and quantum theory. Both deep learning and quantum technologies have several probabilistic and stochastic methods in common. These methods are described and illustrated using numerous examples within the text. Concepts in entropy are provided from a Shannon as well as a von-Neumann view. Singular value decomposition is applied in machine learning as a basic tool and presented in the Schmidt decomposition. Besides the in-common methods, Born’s rule as well as positive operator valued measures are described and illustrated, along with quasi-probabilities. Author Charles R. Giardina provides clear and concise explanations, accompanied by insightful and thought-provoking visualizations, to deepen your understanding and enable you to apply the concepts to real-world scenarios.
Truly Concurrent Process Algebra with Localities introduces localities into truly concurrent process algebras. The book explores all aspects of localities in truly concurrent process algebras, such as Calculus for True Concurrency (CTC), which is a generalization of CCS for true concurrency, Algebra of Parallelism for True Concurrency (APTC), which is a generalization of ACP for true concurrency, and Î Calculus for True Concurrency (Î ). Together, these approaches capture the so-called true concurrency based on truly concurrent bisimilarities, such as pomset bisimilarity, step bisimilarity, history-preserving (hp-) bisimilarity and hereditary history-preserving (hhp-) bisimilarity.This book provides readers with all aspects of algebraic theory for localities, including the basis of semantics, calculi for static localities, axiomatization for static localities, as well as calculi for dynamic localities and axiomatization for dynamic localities.
Theory of Structured Parallel Programming is a comprehensive guide to structured parallel programming corresponding to traditional structured sequential programming. The book provides readers with comprehensive coverage of theoretical foundations of structured parallel programming, including analyses of parallelism and concurrency, truly concurrent process algebras, building block-based structured parallel programming, modelling and verification of parallel programming language, modelling and verification of parallel programming patterns, as well as modeling and verification of distributed systems.There have been always two ways to approach parallel computing: one is the structured way, and the other is the graph-based (true concurrent) way. The structured way is often based on the interleaving semantics, such as process algebra CCS. Since the parallelism in interleaving semantics is not a fundamental computational pattern (the parallel operator can be replaced by alternative composition and sequential composition), the parallel operator often does not occur as an explicit operator, such as in the mainstream programming languages C, C++, Java, et al.
Artificial Intelligence and Machine Learning for Open-world Novelty, Volume 134 in the Advances in Computers series presents innovations in computer hardware, software, theory, design and applications, with this updated volume including new chapters on AI and Machine Learning for Real-world problems, Graph Neural Network for learning complex problems, Adaptive Software platform architecture for Aerial Vehicle Safety Levels in real-world applications, OODA Loop for Learning Open-world Novelty Problems, Privacy-Aware Crowd Counting Methods for Real-World Environment, AI and Machine Learning for 3D Computer Vision Applications in Open-world, and PIM Hardware accelerators for real-world problems.Other sections cover Irregular Situations in Real-World Intelligent Systems, Offline Reinforcement Learning Methods for Real-world Problems, Addressing Uncertainty Challenges for Autonomous Driving in Real-World Environments, and more.
Internet of Things: Architectures for Enhanced Living Environments, Volume 133 presents interesting chapters on a variety of timely topics, including Explainable Artificial Intelligence for Enhanced Living Environments: A Study on User Perspective, Human behavioral anomaly pattern mining within an IoT environment: an exploratory study, Indoor Activity Localization Technologies for Assisted Living: Opportunities, Challenges, and Future Directions, Smart Indoor Air Quality Monitoring for Enhanced Living Environments and Ambient Assisted Living, Usability evaluation for the IoT use in Enhanced Living Environments, Roadmap to the elderly enhanced living and care environments: applications and challenges on the Internet of Things domain, and much more.
Handbook of Truly Concurrent Process Algebra provides readers with a detailed and in-depth explanation of the algebra used for concurrent computing. This complete handbook is divided into five Parts: Algebraic Theory for Reversible Computing, Probabilistic Process Algebra for True Concurrency, Actors – A Process Algebra-Based Approach, Secure Process Algebra, and Verification of Patterns. The author demonstrates actor models which are captured using the following characteristics: Concurrency, Asynchrony, Uniqueness, Concentration, Communication Dependency, Abstraction, and Persistence. Every pattern is detailed according to a regular format to be understood and utilized easily, which includes introduction to a pattern and its verifications.Patterns of the vertical domains are also provided, including the domains of networked objects and resource management. To help readers develop and implement the software patterns scientifically, the pattern languages are also presented.
The 130th volume is an eclectic volume inspired by recent issues of interest in research and development in computer science and computer engineering. The volume is a collection of five chapters.
DNA or Deoxyribonucleic Acid computing is an emerging branch of computing that uses DNA sequence, biochemistry, and hardware for encoding genetic information in computers. Here, information is represented by using the four genetic alphabets or DNA bases, namely A (Adenine), G (Guanine), C (Cytosine), and T (Thymine), instead of the binary representation (1 and 0) used by traditional computers. This is achieved because short DNA molecules of any arbitrary sequence of A, G, C, and T can be synthesized to order. DNA computing is mainly popular for three reasons: (i) speed (ii) minimal storage requirements, and (iii) minimal power requirements. There are many applications of DNA computing in the field of computer science. Nowadays, DNA computing is widely used in cryptography for achieving a strong security technique, so that unauthorized users are unable to retrieve the original data content. In DNA-based encryption, data are encrypted by using DNA bases (A, T, G, and C) instead of 0 and 1. As four DNA bases are used in the encryption process, DNA computing supports more randomness and makes it more complex for attackers or malicious users to hack the data. DNA computing is also used for data storage because a large number of data items can be stored inside the condensed volume. One gram of DNA holds approx DNA bases or approx 700 TB. However, it takes approx 233 hard disks to store the same data on 3 TB hard disks, and the weight of all these hard disks can be approx 151 kilos. In a cloud environment, the Data Owner (DO) stores their confidential encrypted data outside of their own domain, which attracts many attackers and hackers. DNA computing can be one of the best solutions to protect the data of a cloud server. Here, the DO can use DNA bases to encrypt the data by generating a long DNA sequence. Another application of DNA computing is in Wireless Sensor Network (WSN). Many researchers are trying to improve the security of WSN by using DNA computing. Here, DNA cryptography is used along with Secure Socket Layer (SSL) that supports a secure medium to exchange information. However, recent research shows some limitations of DNA computing. One of the critical issues is that DNA cryptography does not have a strong mathematical background like other cryptographic systems. This edited book is being planned to bring forth all the information of DNA computing. Along with the research gaps in the currently available books/literature, this edited book presents many applications of DNA computing in the fields of computer science. Moreover, research challenges and future work directions in DNA computing are also provided in this edited book.