2,641 research outputs found

    Boolean Satisfiability in Electronic Design Automation

    No full text
    Boolean Satisfiability (SAT) is often used as the underlying model for a significant and increasing number of applications in Electronic Design Automation (EDA) as well as in many other fields of Computer Science and Engineering. In recent years, new and efficient algorithms for SAT have been developed, allowing much larger problem instances to be solved. SAT “packages” are currently expected to have an impact on EDA applications similar to that of BDD packages since their introduction more than a decade ago. This tutorial paper is aimed at introducing the EDA professional to the Boolean satisfiability problem. Specifically, we highlight the use of SAT models to formulate a number of EDA problems in such diverse areas as test pattern generation, circuit delay computation, logic optimization, combinational equivalence checking, bounded model checking and functional test vector generation, among others. In addition, we provide an overview of the algorithmic techniques commonly used for solving SAT, including those that have seen widespread use in specific EDA applications. We categorize these algorithmic techniques, indicating which have been shown to be best suited for which tasks

    Self-dual codes, subcode structures, and applications.

    Get PDF
    The classification of self-dual codes has been an extremely active area in coding theory since 1972 [33]. A particularly interesting class of self-dual codes is those of Type II which have high minimum distance (called extremal or near-extremal). It is notable that this class of codes contains famous unique codes: the extended Hamming [8,4,4] code, the extended Golay [24,12,8] code, and the extended quadratic residue [48,24,12] code. We examine the subcode structures of Type II codes for lengths up to 24, extremal Type II codes of length 32, and give partial results on the extended quadratic residue [48,24,12] code. We also develop a generalization of self-dual codes to Network Coding Theory and give some results on existence of self-dual network codes with largest minimum distance for lengths up to 10. Complementary Information Set (CIS for short) codes, a class of classical codes recently developed in [7], have important applications to Cryptography. CIS codes contain self-dual codes as a subclass. We give a new classification result for CIS codes of length 14 and a partial result for length 16

    Productivity Analysis and Use of Sequence-Based Specification in a Web-Development Environment

    Get PDF
    This study evaluates the productivity of a software team in a web-development company and assesses the effects of the sequence-based specifications process on productivity and software accuracy in this environment. This study compares two software projects completed at GoTrain Corporation in 2001 and 2002. GoTrain is an application service provider and delivers environmental, safety and health (ES&H) training courses to a variety of clients through an Internet-based learning management system (LMS), called the Academy. GoTrain was established in 1999 through the merger of two small companies – a training services organization and a web design group. Because neither of the parent companies specialized in software development, the new GoTrain programming team began creating the first Academy applications without the structure of a formal software process. This study evaluates the productivity of the GoTrain programming team at the time formal software processes were introduced into the development environment. The first project evaluated was an upgrade of the GoTrain Academy to provide Spanish support for the end-used and was performed using the Microsoft Solutions Framework ™ (MSF) Process Model. The second project was an upgrade to the Academy software to support new employee training, enhanced reporting functionality, and improved administrative features. For this project, the MSF Process Model was again used but with sequence-based specification applied to selected Academy features during the design phase. Sequence-based specification is typically used in Cleanroom software engineering to create consistent and complete product requirements through enumeration of system inputs. Focusing on active server pages (ASPs), productivity analyses were based on the total lines of code (LOC) generated during the project and the number of hours required to create the code. The count of errors discovered during testing and the hours required for rework after the Academy release were used to evaluate the accuracy and correctness of the software. A productivity increase is seen between the first and second projects. The second project had higher LOC per man-hour than the first, which is likely a result of the software team becoming more experienced with the software process, developing cohesion among the team members, and improving communication among the project group. The files utilizing the sequence-based specification process in the second project had similar LOC and man-hour values as other files modified during this development effort. Files utilizing sequence-based specification required no modification after the versioned release of the Academy, whereas 68% of the files, similar in LOC and man-hours, created using existing specification processes required modification and re-deployment following the initial release

    An Overview of Backtrack Search Satisfiability Algorithms

    No full text
    Propositional Satisfiability (SAT) is often used as the underlying model for a significan
    corecore