Send
Close Add comments:
(status displays here)
Got it! This site "creationpie.com" uses cookies. You consent to this by clicking on "Got it!" or by continuing to use this website. Note: This appears on each machine/browser from which this site is accessed.
Declarative models
1. Declarative models
Genesis 1:3 And God said, Let there be light: and there was light. [kjv]
και ειπεν ο θεος γενηθητω φως και εγενετο φως [lxx]
When you "
declare" something, like the "
Declaration of Independence", you state that something is what you want it to be.
A
declarative model of a system is a model that describes the
what of a system but not the
how or
why of a system.
The declarative part of what the system does is (often) explained in a model without getting into details of ordering of subparts of the system.
The control part of how the system does it and the order in which things are done is not (usually) explained in a model.
This distinction made is made in computer science and software engineering (and other areas).
2. Genesis 1:3
KJV: And God said, Let there be light: and there was light.
Hebrew: ויאמר אלהים יהי אור ויהי אור׃
Greek: και ειπεν ο θεος γενηθητω φως και εγενετο φως
3. Genesis 1:1: Declarative models and causal reasoning
Genesis 1:1 In the beginning God created the heaven and the earth. [kjv]
εν αρχη εποιησεν ο θεος τον ουρανον και την γην [lxx]
Genesis 1 is a
declarative model of creation and not a
procedural or
imperative model of creation. It says
what happened but not exactly
how it happened.
Word processors are declarative - WYSIWYG (What You See Is What You Get).
Microsoft Word is "What you see is what you hope to get".
Spreadsheets are declarative (a simple functional language).
Programming languages such as C, C++, Java, Python, etc., are imperative or procedural.
4. Puzzle
In a declarative model in the Bible, verses are pieces of a puzzle to be put together into a model that does not assume too much but can explain what is being said in some way.
5. Creation week
Genesis 1:1 In the beginning God created the heaven and the earth. [kjv]
εν αρχη εποιησεν ο θεος τον ουρανον και την γην [lxx]
The creation account in Genesis, in terms of creation days, provides a declarative model of the creation where God "
speaks" things into existence.
Psalms 19:1 The heavens declare the glory of God; and the firmament sheweth his handywork. [kjv]
εις το τελος ψαλμος τω δαυιδ οι ουρανοι διηγουνται δοξαν θεου ποιησιν δε χειρων αυτου αναγγελλει το στερεωμα [lxx]
As God can declare that things exist, the heavens can declare the glory of God.
6. Genesis 1:1
KJV: In the beginning God created the heaven and the earth.
Hebrew: בראשית ברא אלהים את השמים ואת הארץ׃
Greek: εν αρχη εποιησεν ο θεος τον ουρανον και την γην
7. Psalms 19:1
KJV: The heavens declare the glory of God; and the firmament sheweth his handywork.
Hebrew: למנצח מזמור לדוד השמים מספרים כבוד אל ומעשה ידיו מגיד הרקיע׃
Greek: εις το τελος ψαλμος τω δαυιδ οι ουρανοι διηγουνται δοξαν θεου ποιησιν δε χειρων αυτου αναγγελλει το στερεωμα
8. Genesis 1:1 Declarative models
Genesis 1:1 In the beginning God created the heaven and the earth. [kjv]
εν αρχη εποιησεν ο θεος τον ουρανον και την γην [lxx]
The "
declarative" model of creation is before Adam and Eve were created. The exact
way it happened
does not matter.
It does not make sense to try to map time and space of reality as is known now to the that period.
The "
historical" model of humanity started with Adam and continues to the present day. The exact
dates do not matter.
This is known more precisely since the start of written records and less precisely before then.
To show that the Bible is a true message from the creator, (fault-tolerant and error correcting) authentication codes are needed.
9. Song: O Worship the King
Psalms 104:1 Bless the LORD, O my soul. O LORD my God, thou art very great; thou art clothed with honour and majesty. [kjv]
The hymn "
O Worship the King", by Robert Grant, is based, in part, on Psalms 104, a poetic statement of the creation.
By contrast, the creation account in Genesis provides a declarative model of the creation. A declarative model of a system is a model that describes the what of a system but not the how (or why) of a system.
10. Duality in computation
There are two ways of looking at computation.
Operational view: Turing machine - how computation works (bottom-up view)
Declarative view: Church lambda calculus - what computation does mathematically/functionally (top-down view)
The good computer scientist needs to understand both views and how to switch between them as needed.
11. Nontrivial problems
Dijkstra says that a nontrivial problem is nontrivial and complexity is inherent in solving difficult problems.
The moral of the story can only be that a nontrivial algorithm is just nontrivial, and that its final description in a programming language is highly compact compared to the considerations that justify its design. Dijkstra, E. (1976).
A discipline of programming. Englewood Cliffs, NJ: Prentice-Hall., p. xv.
Anything that can make programs easier to understand (and more
declarative) should be a welcome change.
12. Variable declarations
This term "declare" is used in computer science but also describes the creation story at another level since, in each step of creation, God says or speaks (or declares) what is to be done.
Some programming languages require that variables (named storage locations) be "declared" (by the programmer in written form) as to their type, etc. Such statements are called "variable declarations".
13. Views
Many ideas have both a logical and a physical view.
The logical view is more abstract and is concerned about what is done, not how it is done.
The physical view is more concrete and is concerned about how it is done and not so much what is done.
Note: In more complex systems, there can be more than one logical view, but there is essentially only one physical view (that is, reality).
14. Semantics
In programming language theory, there are (at least) two types of semantics (meaning) of programming languages.
The operational view is thinking about how a computing machine works.
A denotational view is thinking about what a computing machine does.
As programming systems become larger, the denotational view becomes more important and the operational view less important.
15. Hymnal example
When someone says to turn to page
123 in a hymnal, there are people who will argue that hymn number
123 is not on page
123. Logical pages do not always match physical pages.
Physical page
123 may not have the hymn at logical page
123. This becomes more apparent as one works with web pages.
16. End of page