Formal Methods for Reasoning About Distributed Systems
{'Code': '05010400', 'Directorate': {'Abbreviation': 'CSE', 'LongName': 'Direct For Computer & Info Scie & Enginr'}, 'Division': {'Abbreviation': 'CCF', 'LongName': 'Division of Computing and Communication Foundations'}}
{'SignBlockName': 'name not available', 'PO_EMAI': None, 'PO_PHON': None}
Large networks of computers supporting both local and distributed               processing are emerging as the computing environments of choice.                Application programs, which concurrently access shared, distributed,            and possibly replicated data in these environments, need to run without         interruption despite failures occurring in the system.  Although                distributed systems are becoming more popular, demonstrating their              reliability is left up to observing their operational behavior in the           field.  It would be more convincing, and in the long run more cost-             effective, to use a more formal means of demonstrating a system's               properties than by simply observing it in use.                                                                                                                  The objectives of this project are:  (1) to design specification                languages suitable for describing properties of reliable distributed            systems; and (2) to develop proof techniques suitable for reasoning             about and guiding the development of such systems.                                                                                                              Formal mathematics, in particular axiomatic and deductive methods of            logic, will be employed to define the syntax and semantics of the               languages and proof techniques.   Formality will be balanced by the             more pragmatic concerns of making the language expressively rich and            proof techniques tractable by system developers and implementors.                                                                                               The results of this work will directly benefit the following                    communities:  distributed systems, by helping people design,                    understand, and reason about reliable systems; programming languages,           by influencing the design and semantics of future distributed                   languages; and formal methods, by extending axiomatic techniques to as          yet unexplored grounds.
{'FirstName': 'Jeannette', 'LastName': 'Wing', 'PI_MID_INIT': 'M', 'PI_SUFX_NAME': None, 'PI_FULL_NAME': 'Jeannette M Wing', 'EmailAddress': 'WING@COLUMBIA.EDU', 'NSF_ID': '000142080', 'StartDate': '08/15/1987', 'EndDate': None, 'RoleCode': 'Principal Investigator'}
{'Name': 'Carnegie-Mellon University', 'CityName': 'PITTSBURGH', 'ZipCode': '152133815', 'PhoneNumber': '4122688746', 'StreetAddress': '5000 FORBES AVE', 'StreetAddress2': None, 'CountryName': 'United States', 'StateName': 'Pennsylvania', 'StateCode': 'PA', 'CONGRESSDISTRICT': '12', 'CONGRESS_DISTRICT_ORG': 'PA12', 'ORG_UEI_NUM': 'U3NKNFLNQ613', 'ORG_LGL_BUS_NAME': 'CARNEGIE MELLON UNIVERSITY', 'ORG_PRNT_UEI_NUM': 'U3NKNFLNQ613'}
{'Name': None, 'CityName': None, 'StateCode': None, 'ZipCode': None, 'StreetAddress': None, 'CountryCode': None, 'CountryName': None, 'StateName': None, 'CountryFlag': None, 'CONGRESSDISTRICT': None, 'CONGRESS_DISTRICT_PERF': '""'}
{'Code': '287500', 'Text': 'SYSTEM SOFTWARE'}
{'url': 'https://www.nsf.gov/awardsearch/download?DownloadFileName=1986&All=true', 'xml': '8620027.xml'}