Program Verification with Monadic Second-Order Logic & Languages

Total Page:16

File Type:pdf, Size:1020Kb

Program Verification with Monadic Second-Order Logic & Languages Program Verification with Monadic Second-Order Logic & Languages for Web Service Development Anders Møller Ph.D. Dissertation Department of Computer Science University of Aarhus Denmark Program Verification with Monadic Second-Order Logic & Languages for Web Service Development A Dissertation Presented to the Faculty of Science of the University of Aarhus in Partial Fulfillment of the Requirements for the Ph.D. Degree by Anders Møller June 12, 2002 Abstract Domain-specific formal languages are an essential part of computer science, combin- ing theory and practice. Such languages are characterized by being tailor-made for specific application domains and thereby providing expressiveness on high abstraction levels and allowing specialized analysis and verification techniques. This disserta- tion describes two projects, each exploring one particular instance of such languages: monadic second-order logic and its application to program verification, and program- ming languages for construction of interactive Web services. Both program verifica- tion and Web service development are areas of programming language research that have received increased attention during the last years. We first show how the logic Weak monadic Second-order Logic on Strings and Trees can be implemented efficiently despite an intractable theoretical worst-case com- plexity. Among several other applications, this implementation forms the basis of a verification technique for imperative programs that perform data-type operations using pointers. To achieve this, the basic logic is extended with layers of language abstractions. Also, a language for expressing data structures and operations along with correctness specifications is designed. Using Hoare logic, programs are split into loop-free fragments which can be encoded in the logic. The technique is described for recursive data types and later extended to the whole class of graph types. As an ex- ample application, we verify correctness properties of an implementation of the insert procedure for red-black search trees. We then show how Web service development can benefit from high-level language support. Existing programming languages for Web services are typically general- purpose languages that provide only low-level primitives for common problems, such as maintaining session state and dynamically producing HTML or XML documents. By introducing explicit language-based mechanisms for those issues, we liberate the Web service programmer from the tedious and error-prone alternatives. Specialized program analyses aid the programmer by verifying at compile time that only valid HTML documents are ever shown to the clients at runtime and that the documents are constructed consistently. In addition, the language design provides support for declar- ative form-field validation, caching of dynamic documents, concurrency control based on temporal-logic specifications, and syntax-level macros for making additional lan- guage extensions. In its newest version, the programming language is designed as an extension of Java. To describe classes of XML documents, we introduce a novel XML schema language aiming to both simplify and generalize existing proposals. All parts are implemented and tested in practice. Both projects involve design of high-level languages and specialized analysis and verification techniques, supporting the thesis that the domain-specific paradigm can provide a versatile and productive approach to development of formal languages. v Acknowledgments I sincerely thank Claus Brabrand, Rasmus Pagh, Anna Ostlin,¨ Jacob and Louise El- gaard, Anders Sandholm, and Aske Simon Christensen for good friendship and for making DAIMI a great place to be. I am grateful to Michael Schwartzbach for being a wise and witty mentor. He has been the ideal supervisor during my studies. I have learned much from Nils Klarlund. I thank him for valuable cooperation and guidance, and for his hospitality the times I visited New Jersey. I am also indebted to Alex Aiken for allowing me to have an inspiring and exciting stay at UC Berkeley. Also thanks to Jeff Foster, Zhendong Su, and David Gay for their friendliness and insightful discussions. Special thanks go to my wife Hanne and to my parents for encouragement and giving me the possibility to pursue my goals. My daughter Sara Louise arrived just in time for this section to be written. I appreciate her effort in reminding me that there are much more important things in life than programming languages. Anders Møller, Aarhus, June 12, 2002. vii Contents Abstract v Acknowledgments vii I Overview 1 1 Introduction 3 1.1 Structure of the Dissertation . 3 1.2 About Domain-Specific Formal Languages . 5 2 Program Verification with Monadic Second-Order Logic 7 2.1 The MONA Tool . 7 2.1.1 The Automaton–Logic Connection . 8 2.1.2 Core WS1S . 9 2.1.3 Complexity . 10 2.1.4 BDD Representation of Automata . 11 2.1.5 Tree Logics and Tree Automata . 12 2.1.6 Finite vs. Infinite Structures . 12 2.1.7 Restrictions and Three-Valued Logic . 13 2.1.8 Other Implementation Tricks . 13 2.1.9 Applications . 17 2.2 Program Verification . 19 2.2.1 Overview . 19 2.2.2 Related Work . 20 2.2.3 Pointer Assertion Logic and Graph Types . 21 2.2.4 Encoding Programs and Properties in MONA Logic . 23 3 Languages for Web Service Development 27 3.1 Interactive Web Services . 28 3.2 The Session-Centered Approach . 31 3.2.1 Script-Centered Languages . 31 3.2.2 Page-Centered Languages . 32 3.2.3 Session-Centered Languages . 33 3.2.4 A Runtime Model with Support for Sessions . 35 3.3 Dynamic Construction of Web Pages . 36 3.4 Program Analyses . 39 ix 3.4.1 Flow Graphs for JWIG Programs . 40 3.4.2 Summary Graphs for XML Expressions . 40 3.4.3 Analyzing Plug Operations . 42 3.4.4 Analyzing Receive Operations . 42 3.4.5 Analyzing Show Operations . 43 3.5 Declarative Form Field Validation . 43 3.5.1 The PowerForms Language . 44 3.5.2 PowerForms in JWIG . 46 3.6 Other Aspects of Web Service Languages . 46 3.6.1 Concurrency Control . 46 3.6.2 Security Issues . 48 3.6.3 Language Abstractions with Syntax Macros . 49 3.7 Schema Languages for XML . 49 3.7.1 The Document Structure Description Language . 51 3.7.2 Validating Summary Graphs with DSD2 . 54 4 Conclusion 57 II Publications 59 5 MONA 1.x: New Techniques for WS1S and WS2S 61 5.1 Introduction . 61 5.2 M2L(Str) and WS1S . 62 5.3 DAGs for Compilation . 64 5.4 Experimental Results . 64 5.5 Related and Future Work . 65 6 MONA Implementation Secrets 67 6.1 Introduction . 67 6.2 The Automaton–Logic Connection . 68 6.3 Benchmark Formulas . 70 6.4 Implementation Secrets . 72 6.4.1 BDD-based Automata Representation . 72 6.4.2 Cache-Conscious Data Structures . 73 6.4.3 Eager Minimization . 74 6.4.4 Guided Tree Automata . 75 6.4.5 DAGification . 75 6.4.6 Three-Valued Logic and Automata . 76 6.4.7 Formula Reductions . 77 6.5 Future Developments . 79 6.6 Conclusion . 80 7 Compile-Time Debugging of C Programs Working on Trees 81 7.1 Introduction . 81 7.2 The Language . 85 7.2.1 The C Subset . 85 x 7.2.2 Modeling the Store . 86 7.2.3 Store Logic . 87 7.2.4 Program Annotations and Hoare Triples . 88 7.3 Deciding Hoare Triples . 90 7.3.1 Weak Monadic Second-Order Logic with Recursive Types . 90 7.3.2 Encoding Stores and Formulas in WSRT . 91 7.3.3 Predicate Transformation . 92 7.4 Deciding WSRT . 93 7.4.1 The Naive Decision Procedure . 93 7.4.2 A Decision Procedure using Guided Tree Automata . 94 7.5 Conclusion . 95 8 The Pointer Assertion Logic Engine 97 8.1 Introduction . 97 8.1.1 A Tiny Example . 99 8.1.2 Related Work . 100 8.2 Pointer Assertion Logic . 101 8.2.1 Store Model . 101 8.2.2 Graph Types . 101 8.2.3 The Programming Language . 103 8.2.4 Program Annotations . 104 8.2.5 Semantics of Annotations . 106 8.3 Example: Threaded Trees . 106 8.4 Hoare Logic Revisited . 108 8.5 Deciding Hoare Triples in MONA . 109 8.6 Data Abstractions . 112 8.7 Implementation and Evaluation . 113 8.8 Conclusion . 116 9 The <bigwig> Project 117 9.1 Introduction . 117 9.1.1 Motivation . 118 9.1.2 The <bigwig> Language . 120 9.1.3 Overview . 122 9.2 Session-Centered Web Services . 122 9.2.1 The Script-Centered Approach . 122 9.2.2 The Page-Centered Approach . 124 9.2.3 The Session-Centered Approach . 125 9.2.4 Structure of <bigwig> Services . 126 9.2.5 A Session-Based Runtime Model . 127 9.3 Dynamic Construction of HTML Pages . 129 9.3.1 Analysis of Template Construction and Form Input . 131 9.3.2 HTML Validity Analysis . 132 9.3.3 Caching of Dynamically Generated HTML . 134 9.3.4 Code Gaps and Document Clusters . 134 9.4 Form Field Validation . 135 9.5 Concurrency Control . 138 xi 9.6 Syntax Macros . 140 9.7 Other Web Service Aspects . 143 9.7.1 HTML Deconstruction . 143 9.7.2 Seslets . 144 9.7.3 Databases . 144 9.7.4 Security . ..
Recommended publications
  • Metadata for Semantic and Social Applications
    etadata is a key aspect of our evolving infrastructure for information management, social computing, and scientific collaboration. DC-2008M will focus on metadata challenges, solutions, and innovation in initiatives and activities underlying semantic and social applications. Metadata is part of the fabric of social computing, which includes the use of wikis, blogs, and tagging for collaboration and participation. Metadata also underlies the development of semantic applications, and the Semantic Web — the representation and integration of multimedia knowledge structures on the basis of semantic models. These two trends flow together in applications such as Wikipedia, where authors collectively create structured information that can be extracted and used to enhance access to and use of information sources. Recent discussion has focused on how existing bibliographic standards can be expressed as Semantic Metadata for Web vocabularies to facilitate the ingration of library and cultural heritage data with other types of data. Harnessing the efforts of content providers and end-users to link, tag, edit, and describe their Semantic and information in interoperable ways (”participatory metadata”) is a key step towards providing knowledge environments that are scalable, self-correcting, and evolvable. Social Applications DC-2008 will explore conceptual and practical issues in the development and deployment of semantic and social applications to meet the needs of specific communities of practice. Edited by Jane Greenberg and Wolfgang Klas DC-2008
    [Show full text]
  • Metod Иностранный Язык ПЗ 38.02.04 2019
    МИНИCTEPCTBO НАУКИ И ВЫСШЕГО ОБРАЗОВАНИЯ РОССИЙСКОЙ ФЕДЕРАЦИИ Федеральное государственное автономное образовательное учреждение высшего образования «СЕВЕРО-КАВКАЗСКИЙ ФЕДЕРАЛЬНЫЙ УНИВЕРСИТЕТ» Институт сервиса, туризма и дизайна (филиал) СКФУ в г. Пятигорске Колледж Института сервиса, туризма и дизайна (филиал) СКФУ в г. Пятигорске Иностранный язык МЕТОДИЧЕСКИЕ УКАЗАНИЯ ДЛЯ ПРАКТИЧЕСКИХ ЗАНЯТИЙ Специальность СПО 38.02.04 Коммерция (по отраслям) Квалификация: Менеджер по продажам Пятигорск 2019 Методические указания для практических занятий по дисциплине «Иностранный язык» составлены в соответствии с требованиями ФГОС СПО, предназначены для студентов, обучающихся по специальности: 38.02.04 Коммерция (по отраслям) Рассмотрено на заседании ПЦК колледжа ИСТиД (филиал) СКФУ в г. Пятигорске Протокол № 9 от «08» апреля 2019г. 2 Пояснительная записка Программа учебной дисциплины по иностранному языку является частью основной профессиональной образовательной программы в соответствии с ФГОС по специальности 38.02.04 Коммерция (по отраслям) Дисциплина входит в общий гуманитарный и социально – экономический цикл профессиональной подготовки. В результате освоения учебной дисциплины обучающийся должен уметь: говорение – вести диалог (диалог–расспрос, диалог–обмен мнениями/суждениями, диалог–побуждение к действию, этикетный диалог и их комбинации) в ситуациях официального и неофициального общения в бытовой, социокультурной и учебно-трудовой сферах, используя аргументацию, эмоционально-оценочные средства; – рассказывать, рассуждать в связи с изученной
    [Show full text]
  • DMK BO2K8.Pdf
    Black Ops 2008: It’s The End Of The Cache As We Know It Or: “64K Should Be Good Enough For Anyone” Dan Kaminsky Director of Penetration Testing IOActive, Inc. copyright IOActive, Inc. 2006, all rights reserved. Introduction • Hi! I’m Dan Kaminsky – This is my 9th talk here at Black Hat – I look for interesting design elements – new ways to manipulate old systems, old ways to manipulate new systems – Career thus far spent in Fortune 500 • Consulting now – I found a really bad bug a while ago. • You might have heard about it. • There was a rather coordinated patching effort. • I went out on a very shaky limb, to try to keep the details quiet – Asked people not to publicly speculate » Totally unreasonable request » Had to try. – Said they’d be congratulated here Thanks to the community • First finder: Pieter de Boer – Michael Gersten – 51 hours later – Mike Christian • Best Paper • Left the lists – Bernard Mueller, sec- – Paul Schmehl consult.com – Troy XYZ – Five days later, but had full – Others info/repro • Thanks • Interesting thinking (got close, – Jen Grannick (she contacted kept off lists) me) – Andre Ludwig – DNSStuff (they taught me – Nicholas Weaver LDNS, and reimplemented – “Max”/@skst (got really really my code better) close) – Everyone else (people know – Zeev Rabinovich who they are, and know I owe them a beer). Obviously thanks to the Summit Members • Paul Vixie • People have really been • David Dagon incredible with this. – Georgia Tech – thanks for • What did we accomplish? the net/compute nodes • Florian Weimer • Wouter Wijngaards • Andreas Gustaffon • Microsoft • Nominum • OpenDNS • ISC • Neustar • CERT There are numbers and are there are numbers • 120,000,000 – The number of users protected by Nominum’s carrier patching operation – They’re not the Internet’s most popular server! • That’s BIND, and we saw LOTS of BIND patching – They’re not the only server that got lots of updates • Microsoft’s Automatic Updates swept through lots and lots of users • Do not underestimate MSDNS behind the firewall.
    [Show full text]
  • IDOL Keyview Viewing SDK 12.7 Programming Guide
    KeyView Software Version 12.7 Viewing SDK Programming Guide Document Release Date: October 2020 Software Release Date: October 2020 Viewing SDK Programming Guide Legal notices Copyright notice © Copyright 2016-2020 Micro Focus or one of its affiliates. The only warranties for products and services of Micro Focus and its affiliates and licensors (“Micro Focus”) are set forth in the express warranty statements accompanying such products and services. Nothing herein should be construed as constituting an additional warranty. Micro Focus shall not be liable for technical or editorial errors or omissions contained herein. The information contained herein is subject to change without notice. Documentation updates The title page of this document contains the following identifying information: l Software Version number, which indicates the software version. l Document Release Date, which changes each time the document is updated. l Software Release Date, which indicates the release date of this version of the software. To check for updated documentation, visit https://www.microfocus.com/support-and-services/documentation/. Support Visit the MySupport portal to access contact information and details about the products, services, and support that Micro Focus offers. This portal also provides customer self-solve capabilities. It gives you a fast and efficient way to access interactive technical support tools needed to manage your business. As a valued support customer, you can benefit by using the MySupport portal to: l Search for knowledge documents of interest l Access product documentation l View software vulnerability alerts l Enter into discussions with other software customers l Download software patches l Manage software licenses, downloads, and support contracts l Submit and track service requests l Contact customer support l View information about all services that Support offers Many areas of the portal require you to sign in.
    [Show full text]
  • Distributed Computing Problems from Wikipedia, the Free Encyclopedia Contents
    Distributed computing problems From Wikipedia, the free encyclopedia Contents 1 Atomic broadcast 1 1.1 References .............................................. 1 2 Atomic commit 2 2.1 Usage ................................................. 2 2.2 Database systems ........................................... 2 2.3 Revision control ............................................ 3 2.4 Atomic commit convention ...................................... 3 2.5 See also ................................................ 4 2.6 References ............................................... 4 3 Automatic vectorization 5 3.1 Background .............................................. 5 3.2 Guarantees ............................................... 6 3.2.1 Data dependencies ...................................... 6 3.2.2 Data precision ......................................... 6 3.3 Theory ................................................. 6 3.3.1 Building the dependency graph ................................ 6 3.3.2 Clustering ........................................... 6 3.3.3 Detecting idioms ....................................... 7 3.4 General framework .......................................... 7 3.5 Run-time vs. compile-time ...................................... 7 3.6 Techniques .............................................. 8 3.6.1 Loop-level automatic vectorization .............................. 8 3.6.2 Basic block level automatic vectorization ........................... 8 3.6.3 In the presence of control flow ................................ 9 3.6.4 Reducing
    [Show full text]
  • SONIC: Application-Aware Data Passing for Chained Serverless Applications
    SONIC: Application-aware Data Passing for Chained Serverless Applications Ashraf Mahgoub Karthick Shankar Subrata Mitra Ana Klimovic Purdue University Carnegie Mellon University Adobe Research ETH Zurich Somali Chaterji Saurabh Bagchi Purdue University Purdue University Abstract introduced serverless workflow services such as AWS Step Data analytics applications are increasingly leveraging Functions [4], Azure Durable Functions [45], and Google serverless execution environments for their ease-of-use and Cloud Composer [24], which provide easier design and orches- pay-as-you-go billing. The structure of such applications tration for serverless workflow applications. Serverless work- is usually composed of multiple functions that are chained flows are composed of a sequence of execution stages, which can be represented as a directed acyclic graph (DAG) [17,53]. together to form a workflow. The current approach of ex- 1 changing intermediate (ephemeral) data between functions DAG nodes correspond to serverless functions (or ls ) and is through a remote storage (such as S3), which introduces edges represent the flow of data between dependent ls (e.g., significant performance overhead. We compare three data- our video analytics application DAG is shown in Fig.1). passing methods, which we call VM-Storage, Direct-Passing, Exchanging intermediate data between serverless functions and state-of-practice Remote-Storage. Crucially, we show that is a major challenge in serverless workflows [34,36,47]. By no single data-passing method prevails under all scenarios design, IP addresses and port numbers of individual ls are not and the optimal choice depends on dynamic factors such as exposed to users, making direct point-to-point communication the size of input data, the size of intermediate data, the appli- difficult.
    [Show full text]
  • Conference Information
    ADVANCED PROGRAM | ICOICT 2021 CONFERENCE INFORMATION Dates August, 3 – 5 2021 Organizer Telkom University, Indonesia Co-organizer Multimedia University, Malaysia Universitas Gadjah Mada, Indonesia Venue Zoom Virtual Webinar and Meeting Secretariat School of Computing, Telkom University Panambulai Building Jl. Telekomunikasi Terusan Buah Batu, Bandung West Java 40257 Indonesia Phone: +62 22 7569131 Fax: +62 22 7565930 Email: [email protected] Conference Website www.icoict.org 1 ADVANCED PROGRAM | ICOICT 2021 WELCOME MESSAGE On behalf of the Organizing and Program Committee, we warmly welcome you to the 9th International Conference on Information and Communication Technology (ICoICT) 2021 on August 3-5th, 2021. The 9th ICoICT 2021 is jointly organized by Telkom University Indonesia, Multimedia University Malaysia, and Universitas Gadjah Mada Indonesia, in association with IEEE Indonesia Section, IEEE Signal Processing Society Chapter, and The Indonesia Section Computer Society Chapter. The previous ICoICT conferences have successfully served as a forum to bring together a diverse group of people from academics and industries to share and present the latest issues and recent developments in Information and Communication Technology (ICT). Papers from the previous ICoICT 2013 until 2020 have been published in IEEE Xplore and indexed in Scopus. The technical program of 9th ICoICT 2021 consists of eight keynotes, one knowledge transfer, five tutorials, six tracks on “Digital Innovations for Post-pandemic Recovery”, and 25 parallel sessions. For the first time, the conference features social events that allow conference participants to meet and discuss with fellow researchers in the same field of interest. Competition for the Best Paper Award is also organized. The 9th ICoICT 2021 received 296 paper submissions from 20 countries, out of which 122 papers have been accepted – corresponding to an acceptance rate of 43.4%.
    [Show full text]
  • A Pathfinder for Comic Books and Graphic Novels 2 Hugh H
    NORTH CAROLINA LIBRARIES Volume 74, Number 1 | Spring/Summer 2016 | ISSN 0029-2540 CLICK ON THE TITLE TO ACCESS THE ARTICLE From the Pen of the Editor: Fire the Librarians First! 1 Ralph Scott A Pathfinder for Comic Books and Graphic Novels 2 Hugh H. Davis, Ryan M. Smith Incorporating Branded Academic Library Programming to Promote and 13 Showcase Campus Research and Artistic Performances Christian Burris, Carolyn McCallum, Molly Keener Why Should I Care?: RDA and Your Library 21 Sonia Archer-Capuzzo Diversity from the Inside Out: 25 Eight Years of the UNCG Libraries Diversity Committee Orolando Augustus Duffus, Tiffany Henry, Jada Jones, Stacey Krim 30 61st Biennial Conference: Ogilvie Lecture & Biennium Reports UNC-CH Library School Master’s Paper Abstracts: 42 Summer 2014 - Spring 2016 College STAR for Librarians 79 Clark Nall From the Page of North Carolina Libraries: 81 Intellectual Freedom? Censorship in North Carolina, 1981-1985 Barbara A. Thorson North Carolina Books 84 Compiled by Al Jones Wired to the World: Browsers 92 Ralph L. Scott DRAFT The Charles Waddell Chesnutt Collection at Fayetteville State University 93 William Joseph Thomas North Carolina Libraries is the official publication of the North Carolina Library Association. North Carolina Libraries Volume 74 Issue 1 Spring/Summer 2016 1 From the Pen of the Editor | Ralph Scott Fire the Librarians First! lectric utilities have a load sharing system that the domain of life-long learners of all classes, are now allows them to cut off subscribers when the being shuttered and closed, because as we all know system demand exceeds the resources available.
    [Show full text]
  • Festschrift Honoring Rick Rashid on His 60Th Birthday
    estschrift for Rick Rashid F on his 60th birthday Rich Draves Pamela Ash 9 March 2012 Dan Hart illustration for School of Computer Science, © 2009 Carnegie Mellon University, used with permission. INTRODUCTION RICH DRAVES ou’re holding a Festschrift honoring Rick Rashid on his 60th birthday. You may well ask, “What is a Festschrift?” According to Wikipedia, a Festschrift “is a book Y honoring a respected person, especially an academic, and presented during his or her lifetime.” The Festschrift idea dates back to August 2011, when a group of friends and colleagues suddenly realized that Rick’s 60th birthday was rapidly approaching. In our defense, I can only point to Rick’s youthful appearance and personality. Peter Lee suggested that we organize a Festschrift. The idea was foreign, but everyone immediately recognized that it was the right way to honor Rick. The only problem was timing. Fortunately, this is a common problem and the belated Festschrift is somewhat traditional. We set a goal of holding a colloquium on March 9, 2012 (in conjunction with Microsoft Research’s annual TechFest) and producing a volume by September 2012, within a year of Rick’s birthday. This volume has content similar to the colloquium, but some authors made a different written contribution. The DVD in the back of the book contains a recording of the colloquium. I want to emphasize that we’re celebrating Rick’s career and accomplishments to date but we are also looking forward to many more great things to come. In other words, we need not fear his retirement.
    [Show full text]
  • Barrier Truth – Saturday 24Th July 2021
    Saturday, July 24, 2021 No. 32,877 $2.50 BROKEN HILL TODAY: 15° Sunday: 15° Monday: 18° Tuesday: 20° How we got it wrong Page 6 Farmers unite for farm safety Page 4 A step closer to detox and rehab facilities for Broken Hill and Far West A group of passionate community proud that the WNSW PHN is able to take of residents surveyed agreeing that drug and an appropriate implementation leaders and health professionals a lead role to partner with and support and alcohol dependence was a serious process for the project while establishing have joined forces under the the Broken Hill community,” Mr Coe said. issue in the city. timeframes for the project in line with stewardship of the Western NSW For the past 18 months, AOD Steering Broken Hill experiences the 5th- the plan. Jodie Sanderson is excited that Primary Health Network (WNSW Committee Chair, Joanie Sanderson, highest rate of alcohol-attributable her small team will soon benefi t from the PHN) to fi ght for Alcohol and Other along with members of the WNSW PHN deaths of any NSW LGA, a rate 20 per inclusion of other voices in the bid. Drugs (AOD) services in Broken Hill. Far West Community Advisory Council cent higher than the state average. The “The Steering Committee invites have been the driving forces behind this rate of drug offences is also 1.8 times interested participants to apply to be The Broken Hill AOD Detox and push for services. “This is a service that that of the state and the area has the part of the planning process for the Rehab Steering Committee met for the will hopefully change the stories of many 5th-highest rate of amphetamine use/ development of this unit.
    [Show full text]
  • Alderman Ms Project.Pdf (3.251Mb)
    Jason Alderman – MS IDT Project Documentation Generating Comics Narrative to Summarize Wearable Computer Data Jason Alderman Masters Project Documentation Information Design and Technology Program Department of Literature, Communication and Culture Georgia Institute of Technology April 12, 2006 Committee: Michael Mateas (Chair), Michael Nitsche, Thad Starner Abstract As people record their entire lives to disk, they need ways of summarizing and making sense of all of this data. Comics (and visual language) are a largely untapped medium for summarization, as they are already subtractive and abstract by nature (the brain fills in the blanks and the details), and they provide a way to present a series of everyday events as a memorable narrative that is easily skimmed. This research builds upon the research of Microsoft, FX Palo Alto Labs, ATR Labs, and others to further ground the procedural generation in the comics theory of Scott McCloud, et al. 1 Jason Alderman – MS IDT Project Documentation Table of Contents INTRODUCTION.................................................................................................................................................4 STATEMENT OF PROBLEM..............................................................................................................................5 WIDER CONTEXT ...............................................................................................................................................6 WHY NARRATIVE?...............................................................................................................................................6
    [Show full text]
  • IDOL Keyview PDF Export SDK 12.7 C Programming
    KeyView Software Version 12.7 PDF Export SDK C Programming Guide Document Release Date: October 2020 Software Release Date: October 2020 PDF Export SDK C Programming Guide Legal notices Copyright notice © Copyright 1997-2020 Micro Focus or one of its affiliates. The only warranties for products and services of Micro Focus and its affiliates and licensors (“Micro Focus”) are set forth in the express warranty statements accompanying such products and services. Nothing herein should be construed as constituting an additional warranty. Micro Focus shall not be liable for technical or editorial errors or omissions contained herein. The information contained herein is subject to change without notice. Documentation updates The title page of this document contains the following identifying information: l Software Version number, which indicates the software version. l Document Release Date, which changes each time the document is updated. l Software Release Date, which indicates the release date of this version of the software. To check for updated documentation, visit https://www.microfocus.com/support-and-services/documentation/. Support Visit the MySupport portal to access contact information and details about the products, services, and support that Micro Focus offers. This portal also provides customer self-solve capabilities. It gives you a fast and efficient way to access interactive technical support tools needed to manage your business. As a valued support customer, you can benefit by using the MySupport portal to: l Search for knowledge documents of interest l Access product documentation l View software vulnerability alerts l Enter into discussions with other software customers l Download software patches l Manage software licenses, downloads, and support contracts l Submit and track service requests l Contact customer support l View information about all services that Support offers Many areas of the portal require you to sign in.
    [Show full text]