Logic programming

Guarded Command Language

The Guarded Command Language (GCL) is a programming language defined by Edsger Dijkstra for predicate transformer semantics in EWD472. It combines programming concepts in a compact way. It makes it easier to develop a program and its proof hand-in-hand, with the proof ideas leading the way; moreover, parts of a program can actually be calculated. An important property of GCL is nondeterminism. For example, in the if-statement, several alternatives may be true, and the choice of which to choose is done at runtime, when the if-statement is executed. This frees the programmer from having to make unnecessary choices and is an aid in the formal development of programs. GCL includes the multiple assignment statement. For example, execution of the statement x, y:= y, x is done by first evaluating the righthand side values and then storing them in the lefthand variables. Thus, this statement swaps the values of x and y. The following books discuss the development of programs using GCL: * Dijkstra, Edsger W. (1976). A Discipline of Programming. Prentice Hall. ISBN 978-0132158718. * Gries, D. (1981). The Science of Programming. Monographs in Computer Science (in English, Spanish, Japanese, Chinese, Italian, and Russian). New York: Springer Verlag. * Dijkstra, Edsger W.; Feijen, Wim H.J. (1988). A Method of Programming. Boston, MA: Addison-Wesley Longman Publishing Co., Inc. p. 200. ISBN 978-0-201-17536-3. * Kaldewaij, Anne (1990). Programming: the derivation of algorithms. Prentice-Hall, Inc. ISBN 0132041081. * Cohen, Edward (1990). David Gries (ed.). Programming in the 1990s: An introduction to the calculation of programs. Texts and Monographs in Computer Science. Springer Verlag. ISBN 978-1-4613-9706-9. (Wikipedia).

Video thumbnail

Intrusion Detection: Part 1

Fundamental concepts of intrusion detection are discussed. Various types of intrusion are analyzed. Password management is explained.

From playlist Network Security

Video thumbnail

Intrusion Detection: Part 2

Fundamental concepts of intrusion detection are discussed. Various types of intrusion are analyzed. Password management is explained.

From playlist Network Security

Video thumbnail

Cryptography 101

Cryptography is a complex and confusing subject. In this talk you will learn about the core components of cryptography used in software development: securing data with encryption, ensuring data integrity with hashes and digital signatures, and protecting passwords with key derivation funct

From playlist Blockchain

Video thumbnail

the C language (part 2 of 5)

Introduction to the C programming language. Part of a larger series teaching programming. See http://codeschool.org

From playlist The C language

Video thumbnail

Correctness And Security - Applied Cryptography

This video is part of an online course, Applied Cryptography. Check out the course here: https://www.udacity.com/course/cs387.

From playlist Applied Cryptography

Video thumbnail

Programming Languages - (part 6 of 7)

How source code becomes a running program, how languages are categorized, and a survey of important languages. Part of a larger series teaching programming. Visit http://codeschool.org

From playlist Programming Languages

Video thumbnail

Lecture 20: Semantics, Part 4

MIT 24.900 Introduction to Linguistics, Spring 2022 Instructor: Prof. Norvin W. Richards View the complete course: https://ocw.mit.edu/courses/24-900-introduction-to-linguistics-spring-2022/ YouTube Playlist: https://www.youtube.com/playlist?list=PLUl4u3cNGP63BZGNOqrF2qf_yxOjuG35j This v

From playlist MIT 24.900 Introduction to Linguistics, Spring 2022

Video thumbnail

The C programming language (unit 2) - 2 of 5 (old version; watch new version instead)

A continuation of discussing the C programming language. This unit goes more into depths on pointers and arrays. Visit http://codeschool.org

From playlist The C language (unit 2)

Video thumbnail

The C programming language (unit 2) - 4 of 5 (old version; watch new version instead)

A continuation of discussing the C programming language. This unit goes more into depths on pointers and arrays. Visit http://codeschool.org

From playlist The C language (unit 2)

Video thumbnail

Advanced Bitcoin Scripting -- Part 1: Transactions & Multisig

This is the first part of a more technical talk where Andreas explores Bitcoin script, with examples from the 2nd edition of Mastering Bitcoin, focusing on the use of conditional statements, flow control, guard clauses and time locks. The examples will include advanced multi-signature scri

From playlist Bitcoin Talks by Andreas M. Antonopoulos

Video thumbnail

Life Onboard The Drug-Busting HMCS Calgary | Warships | Spark

A powerful naval task group has sailed east from ports in Canada to one of the most lawless maritime regions in the world: the Persian Gulf. As a part of a six-part HD documentary series, we follow the daily events and real-life stories of the brave men and women living and working to kee

From playlist Warships

Video thumbnail

Defending against PowerShell attacks - in theory, and in practice by Lee holmes

Learn how attackers are using PowerShell and how to defend against those attacks.

From playlist PowerShell + DevOps Global Summit 2018

Video thumbnail

Defending against PowerShell attacks - in theory, and in practice by Lee holmes

Defending against PowerShell attacks - in theory, and in practice by Lee holmes

From playlist PowerShell + DevOps Global Summit 2018

Video thumbnail

James Kraska “China’s Maritime Militia and International Maritime Law”

James Kraska, U.S. Naval War College. Presented at Conflict in the South China Sea, May 6-7, 2016. An international conference at Yale exploring the history of the ongoing dispute in the South China Sea, featuring speakers from universities and research institutions in Australia, Britain,

From playlist Conflict in the South China Sea, May 6-7, 2016

Video thumbnail

Rails Conf 2013 Lightning Talks

Help us caption & translate this video! http://amara.org/v/FG9z/

From playlist Rails Conf 2013

Video thumbnail

PyCon PL 2015: Gynvael Coldwind "Python in a hacker's toolbox"

A classical language set used by a security specialist included assembly and C, sometimes joined by C++ and usually quite a lot of Bash as well. A few years ago it seemed that Perl, and later Ruby, will become the scripting language of choice in the security field, however another contende

From playlist Gynvael's [EN] Talks and Interviews

Video thumbnail

Micro Militaries - Europe's Tiniest Armies

In modern Europe there are a handful of micro-states, really tiny countries, with equally tiny and archaic armies. Dr. Mark Felton is a well-known British historian, the author of 22 non-fiction books, including bestsellers 'Zero Night' and 'Castle of the Eagles', both currently being de

From playlist Unusual Military Units

Video thumbnail

PROG2006: Haskell - basic function syntax, pattern matching, guards.

PROG2006 Advanced Programming Haskell: Basics of functions, syntax. Let/in, where, guards, pattern matching. Simple programming katas. Testing with Hspec. Examples/documentation testing.

From playlist PROG2006 - Programming

Video thumbnail

the C language (part 5 of 5)

Introduction to the C programming language. Part of a larger series teaching programming. See http://codeschool.org

From playlist The C language

Video thumbnail

ElixirDaze 2017- Lets Generate Tests by Chris Keathley

ElixirDaze 2017- Lets Generate Tests by Chris Keathley

From playlist ElixirDaze 2017

Related pages

Bubble sort | Data type | Extended Euclidean algorithm | Bézout's identity | Greatest common divisor | Euclidean algorithm | Predicate transformer semantics | Congruence relation | SPIN model checker | State (computer science) | Pseudocode | Promela | Proposition | Arg max | B-Method | Lattice (order)