What is wrong?

Notice: Before sending an error with the download, please try the direct link first: The C standard formalized in Coq

Loading...

You must sign in to do that.

Forgot password?

The C standard formalized in Coq

The C standard formalized in Coq

The C standard formalized in Coq

Score: 10.00 | 1 vote
| Sending vote
| Voted!
|

Book Details:

pos
Global
pos
Category
Year:2015
Publisher:Radbound University
Pages:244 pages
Language:english
Since:18/11/2015
Size:1.62 MB
License:Pending review

Content:

The C programming language was created by Thompson and Ritchie around 1970 as the implementation language of the Unix operating system. The development of Unix demonstrated the efficiency and portability of C, and following that success, C quickly became a dominant general purpose programming language. More than 40 years after its introduction, C remains among the most widely used programming languages in the world. However, despite its continuing wide use, C is also among the most bugprone programming languages in the world. As a result of weak static typing and the absence of run-time checks, it is very easy for C programs to have bugs that make the program crash or behave badly in other ways. Dangling pointers and NULL pointers can be dereferenced, arrays can be accessed outside their bounds, etc.

A recent example is the Heartbleed bug in the widely used OpenSSL cryptography library where a buffer overflow allowed access to arbitrary data, which may contain passwords. Heartbleed is not an incidental case where the unsafety of C has disastrous consequences. Wang et al. have shown that the unsafety of C is a serious problem. In safer programming languages than C, bugs like these are less likely to occur, but due to the performance, control and portability benefits of C, the use of C and C derivatives like C++ remains widespread.

Formal verification is a promising approach to retain the performance, control and portability benefits of C but without the dangers of its unsafety. In formal verification one uses mathematical methods to obtain the highest level of assurance of a program’s safety, or even of its entire functional correctness.

Categories:

Tags:

Loading comments...

Scanning lists...

The book in numbers

global rank

rank in categories

online since

18/11/2015

rate score

5

votes

1

Social likes

Nothing yet...

Views

Downloads

This may take several minutes

Interest

Countries segmentation

This may take several minutes

Source Referers

Websites segmentation

evolution

This may take several minutes

Loading...