Jump to content
Main menu
Main menu
move to sidebar
hide
Navigation
Main page
Recent changes
Random page
Help about MediaWiki
Special pages
Niidae Wiki
Search
Search
Appearance
Create account
Log in
Personal tools
Create account
Log in
Pages for logged out editors
learn more
Contributions
Talk
Editing
Formal methods
(section)
Page
Discussion
English
Read
Edit
View history
Tools
Tools
move to sidebar
hide
Actions
Read
Edit
View history
General
What links here
Related changes
Page information
Appearance
move to sidebar
hide
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
==Applications== Formal methods are applied in different areas of hardware and software, including [[Router (computing)|router]]s, [[Ethernet switches]], [[routing protocol]]s, security applications, and [[operating system]] [[microkernel]]s such as [[seL4]]. There are several examples in which they have been used to verify the functionality of the hardware and software used in [[data centre]]s. [[IBM]] used [[ACL2]], a theorem prover, in the [[AMD]] x86 processor development process.{{citation needed|date=September 2015}} Intel uses such methods to verify its hardware and [[firmware]] (permanent software programmed into a [[read-only memory]]){{citation needed|date=September 2015}}. [[Dansk Datamatik Center]] used formal methods in the 1980s to develop a compiler system for the [[Ada programming language]] that went on to become a long-lived commercial product.<ref>{{cite book | first1=Dines | last1=Bjørner | first2=Christian | last2=Gram | first3=Ole N. | last3=Oest | first4=Leif | last4=Rystrøm | chapter=Dansk Datamatik Center | editor-first= John | editor-last=Impagliazzo | editor2-first=Per | editor2-last=Lundin | editor3-first=Benkt | editor3-last=Wangler | title=History of Nordic Computing 3: IFIP Advances in Information and Communication Technology | publisher=Springer | year= 2011 | pages= 350–359 }}</ref><ref>{{cite conference | contribution=40 Years of Formal Methods: Some Obstacles and Some Possibilities? | first1=Dines | last1=Bjørner | first2=Klaus | last2=Havelund | title=FM 2014: Formal Methods: 19th International Symposium, Singapore, May 12–16, 2014. Proceedings | publisher=Springer | pages=42–61 |url=http://www.imm.dtu.dk/~dibj/2014/tokyo/tokyo-s.pdf}}</ref> There are several other projects of [[NASA]] in which formal methods are applied, such as [[Next Generation Air Transportation System]]{{citation needed|date=September 2015}}, Unmanned Aircraft System integration in National Airspace System,<ref>Gheorghe, A. V., & Ancel, E. (2008, November). Unmanned aerial systems integration to National Airspace System. In Infrastructure Systems and Services: Building Networks for a Brighter Future (INFRA), 2008 First International Conference on (pp. 1-5). IEEE.</ref> and Airborne Coordinated Conflict Resolution and Detection (ACCoRD).<ref>Airborne Coordinated Conflict Resolution and Detection, http://shemesh.larc.nasa.gov/people/cam/ACCoRD/ {{Webarchive|url=https://web.archive.org/web/20160305005830/http://shemesh.larc.nasa.gov/people/cam/ACCoRD/ |date=2016-03-05 }}</ref> [[B-Method]] with [[Atelier B]],<ref>{{cite web| url=http://www.atelierb.eu/en/ | title=Atelier B | website=www.atelierb.eu }}</ref> is used to develop safety automatisms for the various subways installed throughout the world by [[Alstom]] and [[Siemens]], and also for [[Common Criteria]] certification and the development of system models by [[ATMEL]] and [[STMicroelectronics]]. Formal verification has been frequently used in hardware by most of the well-known hardware vendors, such as IBM, [[Intel]], and AMD. There are many areas of hardware, where Intel have used formal methods to verify the working of the products, such as parameterized verification of cache-coherent protocol,<ref>C. T. Chou, P. K. Mannava, S. Park, "[https://www.student.cs.uwaterloo.ca/~cs745/paper-pres/simparam.pdf A simple method for parameterized verification of cache coherence protocols]", Formal Methods in Computer-Aided Design, pp. 382–398, 2004.</ref> Intel Core i7 processor execution engine validation <ref>Formal Verification in Intel Core i7 Processor Execution Engine Validation, http://cps-vo.org/node/1371 {{Webarchive|url=https://web.archive.org/web/20150503222301/http://cps-vo.org/node/1371 |date=2015-05-03 }}, accessed at September 13, 2013.</ref> (using theorem proving, [[binary decision diagram|BDDs]], and symbolic evaluation), optimization for Intel IA-64 architecture using HOL light theorem prover,<ref>J. Grundy, "Verified optimizations for the Intel IA-64 architecture", In Theorem Proving in Higher Order Logics, Springer Berlin Heidelberg, 2004, pp. 215–232.</ref> and verification of high-performance dual-port [[gigabit Ethernet]] [[Network interface controller|controller]] with support for [[PCI Express|PCI express]] protocol and Intel advance management technology using Cadence.<ref>E. Seligman, I. Yarom, "[http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.108.2381&rep=rep1&type=pdf Best known methods for using Cadence Conformal LEC]", at Intel.</ref> Similarly, IBM has used formal methods in the verification of power gates,<ref>C. Eisner, A. Nahir, K. Yorav, "[ftp://nozdr.ru/biblio/kolxo3/Cs/CsLn/Computer%20Aided%20Verification,%2020%20conf.,%20CAV%202008(LNCS5123,%20Springer,%202008)(ISBN%209783540705437)(573s)_CsLn_.pdf#page=449 Functional verification of power gated designs by compositional reasoning]{{Dead link|date=November 2022 |bot=InternetArchiveBot |fix-attempted=yes }}", Computer Aided Verification, Springer Berlin Heidelberg, pp. 433–445.</ref> registers,<ref>P. C. Attie, H. Chockler, "[https://core.ac.uk/download/pdf/82434920.pdf Automatic verification of fault-tolerant register emulations]", Electronic Notes in Theoretical Computer Science, vol. 149, no. 1, pp. 49–60.</ref> and functional verification of the IBM Power7 microprocessor.<ref>K. D. Schubert, W. Roesner, J. M. Ludden, J. Jackson, J. Buchert, V. Paruthi, B. Brock, "[https://ieeexplore.ieee.org/abstract/document/5756329/ Functional verification of the IBM POWER7 microprocessor and POWER7 multiprocessor systems]", IBM Journal of Research and Development, vol. 55, no 3.</ref>
Summary:
Please note that all contributions to Niidae Wiki may be edited, altered, or removed by other contributors. If you do not want your writing to be edited mercilessly, then do not submit it here.
You are also promising us that you wrote this yourself, or copied it from a public domain or similar free resource (see
Encyclopedia:Copyrights
for details).
Do not submit copyrighted work without permission!
Cancel
Editing help
(opens in new window)
Search
Search
Editing
Formal methods
(section)
Add topic