(IJCH) If a computer program was an electrical circuit, Lambda Calculus builds its transistors - (Here's Why and How)

(IJCH) If a computer program was an electrical circuit, Lambda Calculus builds its transistors - (Here's Why and How)


(IJCH) If a computer program was an electrical circuit, Lambda Calculus builds its transistors - (Here's Why and How)

 

2014-03-18-edne-gp-mentor3f23bdd1bf5d3475098138a87a56d3bf9.pngSource

 

IJCH - Inside JaiChai's Head (Meaning: My Warped, Personal Opinions and Musings)

 

AIPodcast-key.jpgSource


From the Author:

Salutations.

I am JaiChai.

And if I haven't had the pleasure of meeting you before, I'm delighted to make your acquaintance now.

 

business-handshake.jpgSource (Base Source)

 

I invite you to interact with everyone, learn, and have as much fun as possible!

For my returning online friends, "It's always great to see you again!"

 

Circuits and Programs

 

Ic-images-4.jpgSource

 

Electrical engineers design circuits.

Computer Programmers create, well, computer programs.

Essentially, they are both constructing flow charts - one for electricity, the other for program execution.

These flow charts are what's known as "algorithms".

 

Simple Definition of an "Algorithm"

An algorithm is a Step by step procedure designed to perform an operation, and which (like a map or flowchart) will lead to the sought result if followed correctly.

Algorithms have a definite beginning and a definite end, and a finite number of steps.

An algorithm produces the same output information given the same input information, and several short algorithms can be combined to perform complex tasks such as writing a computer program.

A cookbook recipe, a diagnosis, a problem solving routine, are some common examples of simple algorithms.

source

In mathematics and computer science, an algorithm is an unambiguous specification of how to solve a class of problems.

Algorithms can perform calculation, data processing and automated reasoning tasks.

Source

Simple algorithms are great for solving structured problems; meaning: a straight line sequence of steps.

However, simple algorithms are incapable of solving problems where value judgments are required (e.g., "if this, then do" scenarios). For this added complexity, decision making must be incorporated into the algorithm.

How is this done?

With "Logic Gates".

But in order to understand logic gates, we must first meet George Boole...

 

George Boole

 

IMG_20151103_134248812.jpg?w=400Source

 

George Boole (/buːl/; 2 November 1815 – 8 December 1864) was a largely self-taught English mathematician, philosopher and logician, most of whose short career was spent as the first professor of mathematics at Queen's College, Cork in Ireland.

He worked in the fields of differential equations and algebraic logic, and is best known as the author of The Laws of Thought (1854) which contains Boolean algebra. Boolean logic is credited with laying the foundations for the information age.

There's a crater on the Moon named after him (The Boole Crater).

The keyword Bool represents a Boolean datatype in many programming languages, though Pascal and Java, among others, both use the full name Boolean.

The library, underground lecture theatre complex and the Boole Centre for Research in Informatics at University College Cork are named in his honour. A road called Boole Heights in Bracknell, Berkshire is named after him.

Source

 

Boolean Algebra in a Nutshell

16630985-abstract-word-cloud-for-boolean-algebra-with-related-tags-and-terms.jpgSource

 

In mathematics, Boolean algebra is the branch of algebra that deals with logic.

In Boolean algebra the values of the variables are the truth values true and false, usually denoted by a 1 and 0 respectively.

 

maxresdefault.jpgSource

 

172.pngSource

 

Can you say "Binary"?

Consequently, we owe the creation of every binary system or device to George Boole's fundamental concepts about "switching" things "on" or "off".

Why do I say that?

Because Boolean algebra enables us to make "Logic Gates".

 

5biEHZPBSgcVAchz.pngSource

 

See: "Boolean Logic & Logic Gates: Crash Course Computer Science #3"

 

 

And: "Logic Gate Expressions"

 

 

Brief Explanation of Logic Gates

 

hqdefault.jpgSource

 

In electronics, a logic gate is an idealized or physical device implementing a Boolean function; that is, it performs a logical operation on one or more binary inputs and produces a single binary output.

Depending on the context, the term may refer to an ideal logic gate, one that has for instance zero rise time and unlimited fan-out, or it may refer to a non-ideal physical device.

Source

 

Whether in electronics or computers, their algorithms depend on the actions of just seven types of logic gates, called AND, OR, NAND (Not AND), NOR (Not OR), XOR (Exclusive OR) XNOR (Exclusive NOR) and NOT.

 

table-2-1-1.gifSource

 

A logic gate is a small transistor circuit, basically a type of amplifier, which is implemented in different forms within an integrated circuit. Each type of gate has one or more (most often two) inputs and one output.

The logic rules for each type of gate can be described in different ways, by a written description of the action, by a truth table, or by a Boolean algebra statement.

source

 

1*zq3cbyx-xd_SRq8EwzER0w.jpegSource

Here's a visual of mapping of the electrical flow with logic gates -

 

nnr4wj.jpggSource

 

 

Lambda Calculus

 

feature.pngSource

 

I think Lambda Calculus is awesome!

It is simple, powerful and elegant.

What is Lambda Calculus?

Lambda+Calculus+Foundation+of+functional+programming.jpgSourceLambda+Calculus+and+Programming+Languages.jpgSource

Lambda Calculus can encode any computation using mathematical expressions.

Note: All computations using Turing Machines can be done in Lambda Calculus ("Church - Turing Hypothesis").

 

functional-programming-and-haskell-twbr-away-day-2011-7-638.jpg?cb=1373032763Source

 

Lambda Calculus builds the Logic Gates for mathematical equations AND for programs in all Functional Programming Languages.

 

Functional-Programming-Languages.jpgSource

 

And all this brings me to the title of this article:

 

"If a computer program were an electrical circuit, Lambda Calculus builds its transistors"

 

kicad_pcbnew.pngSource

 

Transistors - (the electronic switches which control an "on" or "off" state in a circuit) ARE logic gates.

 

PIC200111252023324.jpgSource

 

And Lambda Calculus (based on Boolean Algebra) builds the logic gates in all functional computer programs.

hqdefault.jpgSource

 

Parting Shots

 

tumblr_nhq3otaBZd1sszkooo1_400.jpgSource

 

 

1-main3.pngSource

 

Thanks for stopping by.

 

Truly hope to see you again!

 

600800.jpgSource

 

About the Author

Believing that school was too boring, he dropped out of High School early; only to earn an AA, BS and MBA in less than 4 years much later in life – while working full-time as a Navy/Marine Corps Medic.

In spite of a fear of heights and deep water, he performed high altitude, free-fall parachute jumps and hazardous diving ops in deep, open ocean water.

After 24 years of active duty, he retired in Asia.

Since then, he's been a full-time, single papa and actively pursuing his varied passions (Writing, Disruptive Technology, Computer Science and Cryptocurrency - plus more hobbies too boring or bizarre for most folk).

He lives on an island paradise with his teenage daughter, longtime girlfriend and three dogs.

 

How do you rate this article?


0

0

JaiChai
JaiChai

I'm a single papa actively enjoying my varied passions (e.g., Writing, Disruptive Technology, Cryptocurrency, plus more hobbies too bizarre for most folk). I live on an island paradise with my teenage daughter, longtime girlfriend and three dogs.


(IJCH) Life, People, and Philosophy
(IJCH) Life, People, and Philosophy

IJCH - Inside JaiChai's Head (Meaning: My Warped, Personal Opinions and Musings on Life, People and Philosophy)

Send a $0.01 microtip in crypto to the author, and earn yourself as you read!

20% to author / 80% to me.
We pay the tips from our rewards pool.