Working with Sets

A set is a well-defined collection of distinct objects. The objects of a set are called elements. A set is well-defined, if it can be easily understood, whether, a given object, is an element of that set. Some sets do not have any elements. These sets are called empty sets, or null sets. They are denoted by using the symbol Ø.

N = Ø

A set of digits could be defined as:

D = {1, 2, 3, 4}

The set is labeled D, and includes the digits 1, through 4. The left: {, and right: }, braces, are used to enclose all the elements of the set. This makes it easy to understand what is, and is not, an element of the set D. This method of defining a set is called the roster method.

Set-builder Notation is another method that can be used to define a set. An example of the same set, using set-builder notation would be:

D = {x|x is a digit between 1, and 4, inclusive}

This set would be read as “D is the set of all x, such that, x is a digit between 1, and 4, inclusive.” The horizontal pipe: |, is pronounced “such that.” Therefore, when “x|x”, is used, it should be read as “x, such that, x.”

When the word “inclusive”, is used, it means that both 1, and 4, are also included in the set; otherwise, a digit between 1, and 4, would be either 2, or 3. This is because 2, and 3, are the only digits that are between 1, and 4.

Z = {x|x is a digit between 1, and 4}

In this case, set D, would have 4 elements, and set Z, would have 2 elements.

Elements Are Unique

Elements in a set should be unique, i.e., they should not appear more than once in the set. You would not create a set such as: {3, 9, 1, 3}, because the element “3”, appears more than once in the set. The order of the set does not matter. Both: {3, 6, 9} and: {6, 9, 3} represent the same set.

Equal Sets

When two sets are the same, such as: X = {5, 4, 3}, and Y = {3, 4, 5}, then it can also be said that X = Y. The set of both X, and Y, are the same, even though the elements are not displayed in the same order in both sets.

Subsets

If one set contains all the elements of another set, it is called a subset. As an example: P = {4, 9, 0}, and: Q = {0, 9, 6, 4, 3}. In this case, P, is a subset of Q, because every element in P, is also an element in Q. The set of Q also contains 4, 9, and 0. When a set is a subset of another set, it is written as: P ⊆ Q.

Intersection

The intersection of a set is defined as: A ∩ B. If a problem uses this format, it’s simply asking for a list of all elements, that appear in both set A, and, set B. So, if the element “5”, appears in both sets, and all other elements are unique, then the answer would be {5}.

A = {4, 5, 9}; B = {5, 1, 2}; Then A ∩ B = {5}.

Union

The union of a set is defined as: A ∪ B. If a problem uses this format, it’s simply asking for a list of all elements, that appear in either A, or B, or both. If an element appears in both sets, it is only listed once in the union. Look at element “8” in the sample:

A = {9, 8, 4}; B = {2, 1, 8}; Then A ∪ B = {9, 8, 4, 2, 1}.

Universal Set

A universal set, written as ∪, is a set that consists of all elements that need to be considered.

Set Complement

The complement of a set, written as Ā (with a line above the set name), is simply a list of all of the elements in the ∪ (universal) set, that are not in set A. In this case, if ∪ = {1, 2, 3, 4, 5, 6, 7, 8, 9}, and A = {6, 7, 9}, then Ā = {1, 2, 3, 4, 5, 8}.

High-Level Languages

High-level languages are a major advancement in programming languages. High-level languages are much easier to use than assembly or machine languages, because they are designed to use a more English-like syntax. Some examples of high-level language statements are: (a) total = 1 + 3, and (b) name = “Ken”.

High-level languages promote platform independency, i.e., they can be executed on many different machine types. High-level languages might require the use of a compiler. A compiler is used to convert the high-level language code, into machine language (binary-based) code, that can be understood, and executed by the computer. Some high-level languages might require an interpreter, instead of a compiler. An interpreter, interprets the high-level programming code, line-by-line, as the code is executed. Interpreted languages are not compiled ahead of time.

Interpreted languages greatly increase platform-independency, because the programming code is converted to machine language code on the machine in which the program is executing, instead of being converted to machine language code on the programmer’s computer.

High-level programming languages can either be procedure-oriented or object-oriented.

Procedure-oriented Languages

Procedure-oriented languages concentrate on the major tasks that the program needs to perform. Some examples are: (a) calculating sales tax, (b) totaling an order, and (c) inputting customer data. Procedure-oriented languages must be instructed line-by-line, from the start of the task, until task completion. The programmer decides the order in which the computer processes instructions, i.e., the correct sequence. Some examples of procedure-oriented languages are: (a) COBOL, (b) BASIC, and (c) C.

Object-oriented Languages

Object-oriented languages focus on objects that the program can use to accomplish its goal. These might be real-world objects, for example: (a) an employee time card, (b) a customer, or, (c) an employee paycheck. These objects can be used in more than one program, thereby promoting code reuse, which saves time and money. Some examples of object-oriented programming languages are: (a) C#, (b) Java, and (c) C++. These languages can also be used to create procedure-oriented programs.

Assembly Language

Assembly language is slightly more advanced than machine language, and it simplifies a programmer’s job by implementing the use of mnemonics, instead of 0s and 1s. Mnemonics are memory aids which serve as alphabetic abbreviations for computer instructions. There are a few mnemonics which are common amongst various assembly languages. ADD, and MUL, are a couple examples of common mnemonics. Example assembly statements (ASM) would be: (a) MUL bx, ax; and (b) ADD bx, ax.

A program needs to be written in machine language before a computer can understand it; therefore, all assembly language code must be converted into machine language code before the program can be understood and executed by the machine.

An assembler is a program that is designed to convert assembly language programs into machine language programs. This conversion process turns the mnemonic-based assembly language code into the binary code that is required for execution; therefore, assembly language provides an easier way to write machine language code, as the programmer does not have to directly deal with the binary-based machine language.

Assembly language is easier to use than machine language; however, it still requires highly skilled, and trained programmers to be used effectively.

Like machine language, assembly language is platform-dependent. This means that programs generally must be (at the very least) slightly modified, before they will run on another type of machine.

Monkey Cheese

Can a monkey own a technology copyright?

This image, provided by PETA, is a court exhibit in a case that states the photographer should be granted copyrights to the image, and therefore, receive monetary damages, because the photograph was used on the cover of a wildlife book.

Monkey CheeseThe catch? The photographer, is a macaque monkey (Naruto) who lives on the Indonesian island of Sulawesi. Reportedly, the monkey took this selfie using a camera that belonged to David Slater, a wildlife photographer.

A lawsuit was filed by PETA in San Francisco, on September 22, 2015.  Slater states that he should be the copyright holder of the photograph, because (1) he setup the camera so that the photograph could be taken, and (2), he was the owner of the camera, and the “intellect” behind the photograph.

PETA claims that Naruto should own the copyrights to the photograph, and should receive any benefits that are gained from the photograph, which was used on the cover of a wildlife book. PETA stated that macaque monkeys are a critically endangered species, and that their numbers have decreased by around 90%, over the past 25 years.

PETA also sought a court order that would grant both PETA and Dr. Antje Engelhardt (a primatologist), the rights to administer Naruto’s benefits, on the condition that all benefits would be used specifically for the benefit of Naruto, his family, and community. The benefits would be used to help preserve Naruto’s habitat.

So the question is, can a monkey be granted photographic copyrights?

In my opinion, I agree with PETA to some extent. Since Naruto did take the photograph, I think it would be nice to see some of the proceeds of this photograph, which was used as a selling point, on the cover of a wildlife book, go back to Naruto, in order to help preserve the habitat where Naruto lives.

Central Processing Unit

The central processing unit, more commonly referred to as the processor, is the brain behind the computer. There are three primary components that make up the central processing unit (CPU). These components carry out the instructions that allow the computer to function.

Arithmetic Logic Unit

The Arithmetic Logic Unit (ALU) contains the electrical circuits that are used to carry out instructions. The processor can execute many different types of instructions, such as addition, subtraction, multiplication, division, exponentiation, logarithms, etc… The processor can carry out logical instructions such as, greater than, less than, equal to, and so on.

Registers

The registers are tiny storage components located on the processor. The registers are used to store data that is needed frequently, or quickly. Because registers are located on the processor, they are incredibly fast. Registers are volatile storage, meaning, they are unable to maintain data storage without a power source.

Continue reading “Central Processing Unit”

Control Structures

All computer programs are written in one or more of three basic control (logic) structures. These control structures are: (a) sequence, (b) selection, and (c) repetition. Control structures control a program’s flow of logic.

Sequence Structure

The sequence structure is used in every computer program. This structure instructs the computer to process instructions one-by-one. An example of this type of structure might be: (a) reading a recipe, (b) driving directions, or (c) solving math problems. The processing starts at step one, and follows through, step-by-step, until step N. The steps used to solve problems are called algorithms. The sequence structure can be used inside of the selection structure, or, inside of a repetition structure.

Selection Structure

The selection (decision) structure directs a computer to make a decision based on a specified condition. An example of a selection structure might be: (a) if an order total is less than a customer’s credit limit, authorize the transaction, otherwise, decline the transaction. A selection structure can be used inside of a repetition structure.

Repetition Structure

The repetition structure, sometimes referred to as an iteration or loop, directs a computer to repeat one or more instructions until a specified condition has been met. An example of a repetition structure might be: (a) read a file line-by-line, until the entire file has been read. The repetition structure can be used inside of a decision structure.

Machine Language

All data in a modern-day computer is represented by microscopic, 2-state switches. These switches can either be on, or off; there are no other existing states for these switches. These switches are called transistors.

When the switch is in the off-state, represented by 02, the circuit is open, and there is no power flowing through the switch. When the switch is in the on-state, represented as 12, the circuit is closed, and there is power flowing through the switch.

This process can be roughly equated to basic household light switches. When the light switch is in position 12, the circuit is closed, and the light is operating. When the light switch is in position 02, the circuit is open, and the light is non-operational. Assuming the lack of potentiometers within the circuit, no other state exists within the light switch.

Von Neumann computer technology has not currently advanced to the point where minor power fluctuations within a circuit, can be detected (economically), therefore, von Neumann computers are only able to understand these basic 2-state switches.

This limitation meant that the first stored computer programmers had to write all the computer’s instructions using a base 2 numbering system, known as binary. Unlike the n10 decimal numbering system, the n2 numbering system can only be represented using the digits 0 and 1.

Instructions written using the n2 numbering system are known as Machine Language Instructions. Machine language is a platform-dependent language, i.e., each machine type will have its own machine language set. Machine language is a very important concept, because it is the only way to communicate directly with a stored program computer.

Development of machine language instructions requires very highly trained, and skilled, computer programmers, and is an error-prone process. Machine language itself is not error-prone; however, the ability of even the most highly skilled computer programmers to read and write in an n2-based language is somewhat lacking.

Cultural Explanation Essay

Lord of the Flies

Lord of the Flies has become a very popular novel since its first publication in 1954. The novel has been translated into 26 different languages, and become a standard in English readings, in both high schools and colleges (Lambert, 1993). But what is the reason for this popularity? Why does Lord of the Flies stand out so much from other novels?

Popularity

The popularity of Lord of the Flies is not something that’s understood very well. In fact, Lord of the Flies didn’t start off very popular at all. When it was decided to produce the Lord of the Flies movie in 1960, the novel was still a commercial failure (LIFE magazine, 1963). In fact, a Web site that was designed and dedicated to the Lord of the Flies states that the novel’s popularity can be blamed on nothing more than a stroke of good luck (LIFE magazine, 1963). There are, however, others that believe there are specific reasons why Lord of the Flies became so popular, and they don’t believe that it was just a stroke of good luck.

After being rejected by several prominent American houses, the novel was published in the United States by Coward-McCann. The novel was originally published in a hard cover edition. The sales, however, were very minimal. Edmund Epstein, who was the editor of Capricorn Books, wanted to see if Lord of the Flies would catch on in modern literature courses. So, the novel was then published in a paperback edition in 1959, so that it could be sold to various schools. It turns out that Epstein’s instincts were spot on. Not only did the novel catch on, but it sold nearly a half million copies by the end of 1962. By the time, William Golding decided to visit the United States in 1961, the book had become so popular that Golding was inundated with requests for personal speaking engagements (Weber, 2012).

Continue reading “Cultural Explanation Essay”

Cultural Influence Essay

Lord of the Flies

Lord of the Flies is an exceptional novel which has had several different influencing factors on current culture. The novel forces the reader to consider human culture, where all social boundaries and rules have been removed. What story does this novel tell, and how has it affected modern culture?

Lord of the Flies was published in 1954 (William Golding Limited, 2002). Since its publication, it has had several major influences on current culture. Not only has Lord of the Flies become a standard in education, but it has also inspired two films, and has been translated into many different languages (Lambert, 1993).

William Golding

Golding won the Nobel Prize award for his literature in 1983, after his first novel Lord of the Flies was published, in 1954. The book that was originally rejected 21 times, ended up inspiring two films and was translated into 26 different languages. Lord of the Flies not only sold millions of copies, but it also became a standard in both high school, and college, English classes. Lord of the Flies was said to have become a world classic, in English literature (Lambert, 1993).

William Golding never considered his book, Lord of the Flies, to be of much importance. In fact, 15 years after the book had been published, he stated to one of his friends, that he resented writing the novel. Golding felt that his entire reputation was based off the success of Lord of the Flies, which he considered to be a very minor book. Even though the book was a classic in English literature, Golding considered the book to be nothing more than “a joke” (Boyd, 2010).

Continue reading “Cultural Influence Essay”

Cultural Context Essay

Lord of the Flies, a brilliant novel of a group of schoolboys marooned on an uninhabited island after an attempt to escape wartime events, via an airplane evacuation. Soon after their plane crashes on the island the boys are driven to segregate their selves into two groups. The first group, which is led by Ralph, uses a sensible and democratic approach, and the second group, led by Jack, with a brutal military-style dictatorship (Faber and Faber, Lord of the Flies, 2011).

Written by Sir William Golding, Lord of the Flies was his “realist answer” (Faber and Faber, Lord of the Flies, 2011) to 1857’s novel The Coral Island, a book describing the successful experiences of a group of boys, Jack, Ralph, and Peterkin, which were stranded on a deserted island. Lord of the Flies is a novel designed to show the distinction between a democratic and rational setting-Ralph’s group-and the anarchy and dictatorship views of Jack and his choir. This book provides a simple, yet realistic view, of social culture, where rules and boundaries are removed (Faber and Faber, Lord of the Flies, 2011).

History of the Lord of the Flies

During Golding’s lifetime, he published a total of 12 novels, along with many different types of plays. He also wrote many reviews, and essays, as well as short stories. Golding’s first novel, titled, Lord of the Flies, was published in 1954, when he was only 23 years old. Golding lived through, what is considered as “the most terrible and inhumane of centuries” (William Golding’s Life). Much of his work is said to have provided the readers with a better understanding of the horror that took place during his lifetime (William Golding’s Life).

Golding had many personal, and social issues, that were not necessarily made public until recently. A new book titled William Golding, was published in 2009. This book dives into Golding’s personal life with immense detail. The author was given access to hundreds of letters, and other unpublished works of art, such as Golding’s personal journals. The book labels Golding, not only as a war-hero, but also as a reclusive depressive alcoholic, who was riddled with phobias, and even considered himself to be a “monster” (Faber and Faber, William Golding). However, above all, he was also a nurturing family man, and someone who trusted his imagination, above all other things (Faber and Faber, William Golding).

Continue reading “Cultural Context Essay”