Open main menu
Home
Random
Recent changes
Special pages
Community portal
Preferences
About Wikipedia
Disclaimers
Incubator escapee wiki
Search
User menu
Talk
Dark mode
Contributions
Create account
Log in
Editing
Formal methods
(section)
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=May 2025|bot=medic}}{{cbignore|bot=medic}}", 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>
Edit summary
(Briefly describe your changes)
By publishing changes, you agree to the
Terms of Use
, and you irrevocably agree to release your contribution under the
CC BY-SA 4.0 License
and the
GFDL
. You agree that a hyperlink or URL is sufficient attribution under the Creative Commons license.
Cancel
Editing help
(opens in new window)