In computer science Computer science or computing science is the study of the theoretical foundations of information and computation, and of practical techniques for their implementation and application in computer systems. It is frequently described as the systematic study of algorithmic processes that create, describe, and transform information. Computer science, a formal specification is a mathematical Mathematics is the study of quantity, structure, space, and change. Mathematicians seek out patterns, formulate new conjectures, and establish truth by rigorous deduction from appropriately chosen axioms and definitions description of software Computer software, or just software, is the collection of computer programs and related data that provide the instructions telling a computer what to do. The term was coined to contrast to the old term hardware . In contrast to hardware, software is intangible, meaning it "cannot be touched". Software is also sometimes used in a more or hardware Hardware is a general term for the physical artifacts of a technology. It may also mean the physical components of a computer system, in the form of computer hardware that may be used to develop an implementation Implementation is the realization of an application, or execution of a plan, idea, model, design, specification, standard, algorithm, or policy. It describes what the system should do, not (necessarily) how the system should do it. Given such a specification A specification is an explicit set of requirements to be satisfied by a material, product, or service. Should a material, product or service fail to meet one or more of the applicable specifications, it may be referred to as being out of specification; the abbreviation OOS may also be used, it is possible to use formal verification In the context of hardware and software systems, formal verification is the act of proving or disproving the correctness of intended algorithms underlying a system with respect to a certain formal specification or property, using formal methods of mathematics[citation needed] techniques to demonstrate that a candidate system design is correct with respect to the specification. This has the advantage that incorrect candidate system designs can be revised before a major investment has been made in actually implementing the design. An alternative approach is to use provably correct refinement steps to transform a specification into a design, and ultimately into an actual implementation, that is correct by construction.

A design (or implementation) cannot ever be declared “correct” in isolation, but only “correct with respect to a given specification”. Whether the formal specification correctly describes the problem to be solved is a separate issue. It is also a difficult issue to address, since it ultimately concerns the problem constructing abstracted formal representations of an informal concrete problem domain A problem domain is the area of expertise or application that needs to be examined to solve a problem. A problem domain is simply looking at only the topics you are interested in, and excluding everything else. For example, if you were developing a system trying to measure good practice in medicine, you wouldn't include carpet drawings at, and such an abstraction step is not amenable to formal proof. However, it is possible to validate a specification by proving “challenge” theorems In mathematics, a theorem is a statement which has been proven on the basis of previously established statements, such as other theorems, and previously accepted statements, such as axioms. The derivation of a theorem is often interpreted as a proof of the truth of the resulting expression, but different deductive systems can yield other concerning properties that the specification is expected to exhibit. If correct, these theorems reinforce the specifier's understanding of the specification and its relationship with the underlying problem domain. If not, the specification probably needs to be changed to better reflect the domain understanding of those involved with producing (and implementing) the specification.

The Z notation The Z notation , named after Zermelo–Fraenkel set theory, is a formal specification language used for describing and modeling computing systems. It is targeted at the clear specification of computer programs and the formulation of proofs about the intended program behavior is an example of a leading formal specification language A specification language is a formal language used in computer science. Unlike most programming languages, which are directly executable formal languages used to implement a system, specification languages are used during systems analysis, requirements analysis and systems design. Others include the Specification Language(VDM-SL) of the Vienna Development Method The Vienna Development Method is one of the longest-established Formal Methods for the development of computer-based systems. Originating in work done at IBM's Vienna Laboratory in the 1970s, it has grown to include a group of techniques and tools based on a formal specification language - the VDM Specification Language (VDM-SL). It has an and the Abstract Machine Notation (AMN) of the B-Method.

See also

References

This formal methods In computer science and software engineering, formal methods are a particular kind of mathematically-based techniques for the specification, development and verification of software and hardware systems. The use of formal methods for software and hardware design is motivated by the expectation that, as in other engineering disciplines, performing-related article is a stub. You can help Wikipedia by expanding it.

Categories: Formal methods Formal methods are mathematical approaches to software and hardware computer-based system development from requirements, specification and design through to programming and implementation. They form an important theoretical underpinning for software engineering, especially where safety or security is involved. Formal methods are a useful adjunct | Formal specification languages Formal specification languages supporting formal methods |

Personal tools
Namespaces
">
Variants
Views
">
Actions
Search">
Hurricane Grace was a short-lived Category 2 hurricane that contributed to the formation of the powerful 1991 "Perfect Storm". Forming on October 26, Grace initially had subtropical origins, meaning it was partially tropical and partially extratropical in nature. It became a tropical cyclone on October 27, and ultimately peaked with
Navigation
Interaction
Toolbox
Print/export
Languages

 

The above information uses material from Wikipedia and is licensed under the GNU Free Documentation License The purpose of this License is to make a manual, textbook, or other functional and useful document "free" in the sense of freedom: to assure everyone the effective freedom to copy and redistribute it, with or without modifying it, either commercially or noncommercially. Secondarily, this License preserves for the author and publisher a.
Some facts may not have been fully verified for accuracy. [Disclaimers Wikipedia is an online open-content collaborative encyclopedia, that is, a voluntary association of individuals and groups working to develop a common resource of human knowledge. The structure of the project allows anyone with an Internet connection to alter its content. Please be advised that nothing found here has necessarily been reviewed by]
This page was last archived by our server on Tue Jul 20 01:54:05 2010. [ refresh local cache ]
Displaying this page or its contents does not use any Wikimedia Foundation's resources.
The owners of this site proudly support the Wikimedia Foundation.


Z specification of Haskell-like continuations
cspcfcndsz.tk
Z specification of Haskell-like continuations

admin

Wed, 24 Mar 2010 08:37:51 GM

Has anyone ever tried specifying continuations in Z, especially the kind of input/output continuations which are common in Haskell? Any information or ideas, no matter how sketchy, would be appreciated. + + + ...

Google Blogs Search: Formal specification,
Wed Mar 31 12:34:11 2010