![]() |
Welcome to Loot.co.za!
Sign in / Register |Wishlists & Gift Vouchers |Help | Advanced search
|
Your cart is empty |
||
|
Books > Computing & IT > Computer programming
There are many surprising connections between the theory of numbers, which is one of the oldest branches of mathematics, and computing and information theory. Number theory has important applications in computer organization and security, coding and cryptography, random number generation, hash functions, and graphics. Conversely, number theorists use computers in factoring large integers, determining primes, testing conjectures, and solving other problems. This book takes the reader from elementary number theory, via algorithmic number theory, to applied number theory in computer science. It introduces basic concepts, results, and methods, and discusses their applications in the design of hardware and software, cryptography, and security. It is aimed at undergraduates in computing and information technology, but will also be valuable to mathematics students interested in applications. In this 2nd edition full proofs of many theorems are added and some corrections are made.
This innovative resource provides the most comprehensive coverage of software fault tolerance techniques to guide professionals through design, operation and performance. It features an in-depth discussion on the advantages and disadvantages of specific techniques, so practitioners can decide which ones are best suited for their work. The book examines key programming techniques such as assertions, checkpointing, and atomic actions, and provides design tips and models to assist in the development of critical software fault tolerance software systems that help ensure dependable performance. From software reliability, recovery and redundancy to design- and data-diverse software fault tolerance techniques, this practical reference provides detailed insight into techniques that will improve the overall quality of software.
The volume, devoted to variational analysis and its applications, collects selected and refereed contributions, which provide an outline of the field. The meeting of the title "Equilibrium Problems and Variational Models," which was held in Erice (Sicily) in the period June 23 - July 2 2000, was the occasion of the presentation of some of these papers; other results are a consequence of a fruitful and constructive atmosphere created during the meeting. New results, which enlarge the field of application of variational analysis, are presented in the book; they deal with the vectorial analysis, time dependent variational analysis, exact penalization, high order deriva tives, geometric aspects, distance functions and log-quadratic proximal methodology. The new theoretical results allow one to improve in a remarkable way the study of significant problems arising from the applied sciences, as continuum model of transportation, unilateral problems, multicriteria spatial price models, network equilibrium problems and many others. As noted in the previous book "Equilibrium Problems: Nonsmooth Optimization and Variational Inequality Models," edited by F. Giannessi, A. Maugeri and P.M. Pardalos, Kluwer Academic Publishers, Vol. 58 (2001), the progress obtained by variational analysis has permitted to han dle problems whose equilibrium conditions are not obtained by the mini mization of a functional. These problems obey a more realistic equilibrium condition expressed by a generalized orthogonality (complementarity) con dition, which enriches our knowledge of the equilibrium behaviour. Also this volume presents important examples of this formulation."
Did you write C code last week? Does your code work? Is your design clean? If you answered yes to the first question but got queasy over the second two, you need to know about Test Driven Development. TDD helps you write code that works the first time, and then helps you keep it running as the code evolves to meet new needs. In Test Driven Development for Embedded C, author James W. Grenning shows embedded software developers how to bring the benefits of TDD to embedded C. In the book, you'll see how to apply TDD to C and the world of embedded software development. Learn how to break key dependencies, allowing code to be tested thoroughly. Explore how to test-drive your product's core logic, exploiting the power of your development environment to deliver better software. In fact, as the book shows, you can test-drive a device driver before you even have the device soldered into a circuit board. Avoid the natural delays when testing on the target by using the tailored TDD Microcycle, employing off-target tests and dual-targeted code. Learn how to make code testable and more flexible, better able to handle the inevitable changes demanded by the market. The tests drive development and then serve as an executable specification, keeping track of the critical details and assumptions baked into the code. In Test Driven Development for Embedded C, you'll find that TDD is a different way to program-unit tests are written in a tight feedback loop with the production code, producing testable code and greatly reducing wasteful debugging. TDD also influences design. When tests are considered part of design, you create modular and loosely coupled code, the hallmarks of a good design. With Test Driven Development for Embedded C, C developers-even embedded C developers-can finally write cleaner, testable code with TDD.
Since the introduction of personal computers, software has emerged as a driving force in the global economy and a major industry in its own right. During this time, the U.S. government has reversed its prior policy against software patents and is now issuing thousands of such patents each year, provoking heated controversy among programmers, lawyers, scholars, and software companies. This book is the first to step outside of the highly-polarized debate and examine the current state of the law, its suitability to the realities of software development, and its implications for day-to-day software development. Written by a former lawyer and working software developer, "Inventing Software" provides a comprehensive overview of software patents, from the lofty perspectives of legal history and computing theory to the technical details and issues of actual patents. People interested in the legal aspect of software patents will find detailed technical analysis of actual patented software, the legal strategies behind the wording of the patents, and an analysis of the ease or difficulty of detecting infringements. Software developers will find ways to integrate patent planning into their standard software engineering practices, and a practical guide for studying and appraising their competitors' patents and safeguarding the value of their own. Intended primarily for programmers and software industry executives and managers, "Inventing Software" will also be useful, illuminating reading for attorneys and software company investors.
Basics of Game Design is for anyone wanting to become a professional game designer. Focusing on creating the game mechanics for data-driven games, it covers role-playing, real-time strategy, first-person shooter, simulation, and other games. Written by a 25-year veteran of the game industry, the guide offers detailed explanations of how to design the data sets used to resolve game play for moving, combat, solving puzzles, interacting with NPCs, managing inventory, and much more. Advice on developing stories for games, building maps and levels, and designing the graphical user interface is also included.
Both Java and .NET use the idea of a virtual machine (VM) rather than a true executable. While very useful for some purposes, VMs make your source code and hence your intellectual property (IP) inherently less secure because the process can be reversed or decompiled. This book is useful because you must understand how decompilation works in order to properly protect your IP. Anyone interested in protecting Java code from prying eyes will want to buy this one of a kind book as it separates fact from fiction about just how ineffective obfuscators are at protecting your corporate secrets.While it is very easy for anyone to decompile Java code and almost as easy to run it through an obfuscation protection tool, there is very little information on just what happens when you do this. How secure is your code after you run an obfuscator, for example? bytecodes and the Java Virtual Machine (JVM) than in any book yet published. This book redresses the imbalance by providing insights into the features and limitations of todays decompilers and obfuscators, as well as offering a detailed look at what JVMs actually do.Virtual machine is the computer science term used when (most often in an attempt to gain greater portability) you create an abstract virtual processor and write code for it instead of having your compiler generate actual machine language for a chip like the Pentium 4. want the code to run. This translates the virtual machine language to the real machine language of your processor. The intermediary code for the virtual machine is what can more easily be decompiled, although with a loss of security, since in order for the code to be converted to real machine language it must be relatively transparent and not just a sequence of 0s and 1s
Genetic algorithms provide a powerful range of methods for solving complex engineering search and optimization algorithms. Their power can also lead to difficulty for new researchers and students who wish to apply such evolution-based methods. "Applied Evolutionary Algorithms in Java" offers a practical, hands-on guide to applying such algorithms to engineering and scientific problems. The concepts are illustrated through clear examples, ranging from simple to more complex problems domains; all based on real-world industrial problems. Examples are taken from image processing, fuzzy-logic control systems, mobile robots, and telecommunication network optimization problems. The Java-based toolkit provides an easy-to-use and essential visual interface, with integrated graphing and analysis tools. Topics and features: *inclusion of a complete Java toolkit for exploring evolutionary algorithms *strong use of visualization techniques, to increase understanding *coverage of all major evolutionary algorithms in common usage *broad range of industrially based example applications *includes examples and an appendix based on fuzzy logic This book is intended for students, researchers, and professionals interested in using evolutionary algorithms in their work. No mathematics beyond basic algebra and Cartesian graphs methods are required, as the aim is to encourage applying the Java toolkit to develop the power of these techniques.
Principles of Verilog PLI is a how to do' text on Verilog Programming Language Interface. The primary focus of the book is on how to use PLI for problem solving. Both PLI 1.0 and PLI 2.0 are covered. Particular emphasis has been put on adopting a generic step-by-step approach to create a fully functional PLI code. Numerous examples were carefully selected so that a variety of problems can be solved through ther use. A separate chapter on Bus Functional Model (BFM), one of the most widely used commercial applications of PLI, is included. Principles of Verilog PLI is written for the professional engineer who uses Verilog for ASIC design and verification. Principles of Verilog PLI will be also of interest to students who are learning Verilog.
Today's distributed systems are characterized by interactions-often complex-between many different hardware and software components cooperating and exchanging information. To simplify development of interactive systems and facilitate communication and documentation, experts of varying disciplines employ descriptions, or specifications, of a given system's behavior and/or structure. Specification and Development of Interactive Systems offers a unique approach to program and software development suitable for large distributed systems, with an emphasis on modular system development and systems engineering. The authors build a basic method, called FOCUS, that enables interactive systems to be described by characterizing their histories of message interaction. The method covers functional requirements, timing, structure, and implementation issues of systems. In addition, the book describes how to connect the models and techniques to tables and diagram-based methods popular in practical systems engineering. Topics and features: * Specification of interface behavior and modular top-down system development * Specification of time and the modeling of hardware/software systems * Interface refinement and the modeling of development steps leading from one level of abstraction to the next * State transition diagrams and tables and the usage of common description techniques, such as found in UML This book provides a mathematical and logical foundation for the specification and development of interactive systems based on a model that describes systems in terms of their input/output behavior. The reader gains a comprehensive understanding of all fundamental models, techniques, and methods for interactive system design. The book is an essential resource for all researchers and professionals in computer science, software systems engineering and computer engineering.
The contributors present the main results and techniques of their specialties in an easily accessible way accompanied with many references: historical, hints for complete proofs or solutions to exercises and directions for further research. This volume contains applications which have not appeared in any collection of this type. The book is a general source of information in computation theory, at the undergraduate and research level.
A high school student can create deep Q-learning code to control her robot, without any understanding of the meaning of 'deep' or 'Q', or why the code sometimes fails. This book is designed to explain the science behind reinforcement learning and optimal control in a way that is accessible to students with a background in calculus and matrix algebra. A unique focus is algorithm design to obtain the fastest possible speed of convergence for learning algorithms, along with insight into why reinforcement learning sometimes fails. Advanced stochastic process theory is avoided at the start by substituting random exploration with more intuitive deterministic probing for learning. Once these ideas are understood, it is not difficult to master techniques rooted in stochastic control. These topics are covered in the second part of the book, starting with Markov chain theory and ending with a fresh look at actor-critic methods for reinforcement learning.
In this edition, the scope and character of the monograph did not change with respect to the first edition. Taking into account the rapid development of the field, we have, however, considerably enlarged its contents. Chapter 4 includes two additional sections 4.4 and 4.6 on theory and algorithms of D.C. Programming. Chapter 7, on Decomposition Algorithms in Nonconvex Optimization, is completely new. Besides this, we added several exercises and corrected errors and misprints in the first edition. We are grateful for valuable suggestions and comments that we received from several colleagues. R. Horst, P.M. Pardalos and N.V. Thoai March 2000 Preface to the First Edition Many recent advances in science, economics and engineering rely on nu merical techniques for computing globally optimal solutions to corresponding optimization problems. Global optimization problems are extraordinarily di verse and they include economic modeling, fixed charges, finance, networks and transportation, databases and chip design, image processing, nuclear and mechanical design, chemical engineering design and control, molecular biology, and environment al engineering. Due to the existence of multiple local optima that differ from the global solution all these problems cannot be solved by classical nonlinear programming techniques. During the past three decades, however, many new theoretical, algorith mic, and computational contributions have helped to solve globally multi extreme problems arising from important practical applications."
Object-Process Methodology (OPM) is a comprehensive novel approach to systems engineering. Integrating function, structure and behavior in a single, unifying model, OPM significantly extends the system modeling capabilities of current object-oriented methods. Founded on a precise generic ontology and combining graphics with natural language, OPM is applicable to virtually any domain of business, engineering and science. Relieved from technical issues, system architects can use OPM to engage in the creative design of complex systems.The book presents the theory and practice of OPM with examples from various industry segments and engineering disciplines, as well as daily life. It includes a CD-ROM demo version of the award-winning OPM-supporting Object-Process CASE Tool (OPCAT). Using the numerous examples and exercises (with answers) in the book, this software enables the reader to gain hands-on experience in developing complex systems.
The first comprehensive resource on software and computing innovations in control technology New developments in software and information technology are reinvigorating the control engineering community, raising expectations of dramatic improvements in the performance, safety, design time, and verification and validation of control systems. In concert with these developments, synergies between computer science and control are enabling futuristic innovations in autonomous, embedded, and adaptive systems, uninhabited air vehicles and robots. Software-Enabled Control: Information Technology for Dynamical Systems offers a clear and thorough presentation of computer-enabled developments in control engineering as they relate to autonomous vehicle applications. The contributions range over software architectures, online modeling and control, and hybrid dynamical systems. Some of the novel topics covered in this volume include:
Unique in its focus and broad in scope, Software-Enabled Control: Information Technology for Dynamical Systems offers an important resource for researchers and practitioners who are exploring the frontiers of control engineering, as well as for graduate and undergraduate students seeking entrance into this exciting and visionary community.
In Computer Graphics, the use of intelligent techniques started more recently than in other research areas. However, during these last two decades, the use of intelligent Computer Graphics techniques is growing up year after year and more and more interesting techniques are presented in this area. The purpose of this volume is to present current work of the Intelligent Computer Graphics community, a community growing up year after year. This volume is a kind of continuation of the previously published Springer volumes "Artificial Intelligence Techniques for Computer Graphics" (2008), "Intelligent Computer Graphics 2009" (2009), "Intelligent Computer Graphics 2010" (2010) and "Intelligent Computer Graphics 2011" (2011). Usually, this kind of volume contains, every year, selected extended papers from the corresponding 3IA Conference of the year. However, the current volume is made from directly reviewed and selected papers, submitted for publication in the volume "Intelligent Computer Graphics 2012". This year papers are particularly exciting and concern areas like plant modelling, text-to-scene systems, information visualization, computer-aided geometric design, artificial life, computer games, realistic rendering and many other very important themes.
Experience gained during a ten-year long involvement in modelling, program ming and application in nonlinear optimization helped me to arrive at the conclusion that in the interest of having successful applications and efficient software production, knowing the structure of the problem to be solved is in dispensable. This is the reason why I have chosen the field in question as the sphere of my research. Since in applications, mainly from among the nonconvex optimization models, the differentiable ones proved to be the most efficient in modelling, especially in solving them with computers, I started to deal with the structure of smooth optimization problems. The book, which is a result of more than a decade of research, can be equally useful for researchers and stu dents showing interest in the domain, since the elementary notions necessary for understanding the book constitute a part of the university curriculum. I in tended dealing with the key questions of optimization theory, which endeavour, obviously, cannot bear all the marks of completeness. What I consider the most crucial point is the uniform, differential geometric treatment of various questions, which provides the reader with opportunities for learning the structure in the wide range, within optimization problems. I am grateful to my family for affording me tranquil, productive circumstances. I express my gratitude to F."
For courses in problem solving and programming logic. Making complex programming concepts accessible to every student Starting Out with Programming Logic and Design is a language-independent introductory programming book, teaching students programming concepts and logic without assuming any previous programming experience. Designed for beginners, the text is clear and approachable, making the complex concepts accessible to every student. In this new edition, Gaddis focuses on current languages providing code snippet examples and complete programs for each. The text uses updated, contemporary examples to familiarize students with models and logical thought processes used in programming without further complicating them with language syntax. By using easy-to-understand pseudocode, flowcharts, and other tools, Gaddis illustrates how to design the logic of programs. The book is ideal for a programming logic course taught as a precursor to a language-specific introductory programming course, or for the first part of an introductory programming course.
Semi-infinite optimization is a vivid field of active research. Recently semi infinite optimization in a general form has attracted a lot of attention, not only because of its surprising structural aspects, but also due to the large number of applications which can be formulated as general semi-infinite programs. The aim of this book is to highlight structural aspects of general semi-infinite programming, to formulate optimality conditions which take this structure into account, and to give a conceptually new solution method. In fact, under certain assumptions general semi-infinite programs can be solved efficiently when their bi-Ievel structure is exploited appropriately. After a brief introduction with some historical background in Chapter 1 we be gin our presentation by a motivation for the appearance of standard and general semi-infinite optimization problems in applications. Chapter 2 lists a number of problems from engineering and economics which give rise to semi-infinite models, including (reverse) Chebyshev approximation, minimax problems, ro bust optimization, design centering, defect minimization problems for operator equations, and disjunctive programming."
This book provides a coherent methodology for Model-Driven Requirements Engineering which stresses the systematic treatment of requirements within the realm of modelling and model transformations. The underlying basic assumption is that detailed requirements models are used as first-class artefacts playing a direct role in constructing software. To this end, the book presents the Requirements Specification Language (RSL) that allows precision and formality, which eventually permits automation of the process of turning requirements into a working system by applying model transformations and code generation to RSL. The book is structured in eight chapters. The first two chapters present the main concepts and give an introduction to requirements modelling in RSL. The next two chapters concentrate on presenting RSL in a formal way, suitable for automated processing. Subsequently, chapters 5 and 6 concentrate on model transformations with the emphasis on those involving RSL and UML. Finally, chapters 7 and 8 provide a summary in the form of a systematic methodology with a comprehensive case study. Presenting technical details of requirements modelling and model transformations for requirements, this book is of interest to researchers, graduate students and advanced practitioners from industry. While researchers will benefit from the latest results and possible research directions in MDRE, students and practitioners can exploit the presented information and practical techniques in several areas, including requirements engineering, architectural design, software language construction and model transformation. Together with a tool suite available online, the book supplies the reader with what it promises: the means to get from requirements to code "in a snap".
This book provides a comprehensive overview of digital signal processing for a multi-disciplinary audience. It posits that though the theory involved in digital signal processing stems from electrical, electronics, communication, and control engineering, the topic has use in other disciplinary areas like chemical, mechanical, civil, computer science, and management. This book is written about digital signal processing in such a way that it is suitable for a wide ranging audience. Readers should be able to get a grasp of the field, understand the concepts easily, and apply as needed in their own fields. It covers sampling and reconstruction of signals; infinite impulse response filter; finite impulse response filter; multi rate signal processing; statistical signal processing; and applications in multidisciplinary domains. The book takes a functional approach and all techniques are illustrated using Matlab.
This thesis introduces a successfully designed and commissioned intelligent health monitoring system, specifically for use on any industrial robot, which is able to predict the onset of faults in the joints of the geared transmissions. However the developed embedded wireless condition monitoring system leads itself very well for applications on any power transmission equipment in which the loads and speeds are not constant, and access is restricted. As such this provides significant scope for future development. Three significant achievements are presented in this thesis. First, the development of a condition monitoring algorithm based on vibration analysis of an industrial robot for fault detection and diagnosis. The combined use of a statistical control chart with time-domain signal analysis for detecting a fault via an arm-mounted wireless processor system represents the first stage of fault detection. Second, the design and development of a sophisticated embedded microprocessor base station for online implementation of the intelligent condition monitoring algorithm, and third, the implementation of a discrete wavelet transform, using an artificial neural network, with statistical feature extraction for robot fault diagnosis in which the vibration signals are first decomposed into eight levels of wavelet coefficients.
Computer interfaces and documentation are notoriously difficult for any user, regardless of his or her level of experience. Advances in technology are not making applications more friendly. Introducing concepts from linguistics and language teaching, Language and Communication proposes a new approach to computer interface design. The book explains for the first time why the much hyped user-friendly interface is treated with such derision by the user community. The author argues that software and hardware designers should consider such fundamental language concepts as meaning, context, function, variety, and equivalence. She goes on to show how imagining an interface as a new language can be an invaluable design exercise, calling into question deeply held beliefs and assumptions about what users will or will not understand. Written for a wide range of computer scientists and professionals, and presuming no prior knowledge of language-related terminology, this volume is a key step in the on-going information revolution. |
You may like...
News Search, Blogs and Feeds - A Toolkit
Lars Vage, Lars Iselid
Paperback
R1,332
Discovery Miles 13 320
Hardware Accelerator Systems for…
Shiho Kim, Ganesh Chandra Deka
Hardcover
R3,950
Discovery Miles 39 500
|