This practice test covers every topic that may show up on test 2, and the problems here should be considered at least as challenging as those that will appear on test 2. practice-test (pdf)

We reviewed the final bits of our exploration of social media and then started to consider Chapter 23 in the text. I gave an introduction to public-key encryption and also discussed the nature of software development when it comes to free/open-source versus proprietary options.

Everyone should have a schedule at this point as to when they are going to perform their presentation.

We started chapter 23 today. Read all of Chapter 23 by Friday. I’ll be updating some info on the website on Thursday, April 18.

If you have not planned a day/time for your presentation, we will schedule you on Friday. There are some that I already know are going to be absent on Friday and I will communicate with them individually.

Today, we talked mostly about social media. Given that there are, on average, 340 million tweets per day on Twitter right now, we calculated how much it costs to store tweets on Twitter per day. We found that there are at least 47GB worth of tweets per day, which from one perspective sounds large. However, if we consider that this value represents most significant events in the entire world for the day in question (plus a lot of junk), it actually becomes a bit amazing that 47GB can store all of this data.

I gave examples for North Korea and some other “trending” topics.

See this blog post that relates to what I spent a good chunk of my spring break doing, along with my brother at Room214 in Boulder.

Here is information about recycling in Boulder County.

Today, we discussed some of the numbers related to plastics recycling. Related information can be found here. We also discussed some of the guidelines for recycling in Boulder, what can be recycled and what can’t, and what the recycling center explicitly asks with regards to plastic bags and so on.

Oddly, the Safeway at 28th and Iris in Boulder does not have any recycling bins for plastics, but does have a recycling container specifically for people to deposit plastic bags in.

Due Friday, April 12. (I know a few of you are planning on being gone this Friday. I’ll accept this on Monday from anyone without penalty.)

- Add the binary numbers 011001 and 010101. Check your answer by converting the numbers, and answer, to base-10.
- Multiply the number 0111010 by 2 in binary.
- A combination lock on a safe requires you to know 5 numbers, each ranging from 0 to 63, and each thus requiring at most 6 digits to represent in binary. For example: $0_{10}=000000_{2}$ and $63_{10}=111111_{2}$. A spy is planning on sending you these numbers, each as a message $m$ that is 8 bits/digits in binary. The first two digits (on the left side of the binary number) form a parity check function $p(m)$ given by: \[p(m)=\begin{cases}00\text{ if $m$ has 1 or 0 ones}\cr 01\text{ if $m$ has 2 or 3 ones}\cr 10\text{ if $m$ has 4 or 5 ones}\cr 11\text{ if $m$ has 6 ones}\end{cases}.\] For example, if you receive the message 11010111, then you know that the parity check function value is 11 while the message is 010111, but since these don’t match you know that the message has been scrambled and is not reliable. The correct parity function value for the message 010111 would be 10, meaning that the received message should be 10010111. This all being said, you receive the messages: \[01010001,\quad 01110010,\quad 00000010,\quad 10100100,\quad\text{and}\quad 01010101.\] Which numbers, in base 10, are you sure are a part of the combination to the safe? Which are you not sure about?

## All About Binary

The electrical/computational world around us is completely encoded in binary, or base-2. Between Wednesday and Friday, we did the following.

- Converted numbers from base 2 to base 10.
- Converted numbers from base 10 to base 2 (a bit more tricky).
- Added numbers in binary. (See this tutorial)
- Multiplied numbers by 2 in binary. (See my in my office for questions on this.)
- Considered a famous problem in mathematics that was formed to be computed in binary.
- Considered parity check functions for detecting when an evil scrambler or environmental factors swap digits in a binary stream.

## A Quick Parity Check Function

I am going to be sending you a message that is 6 bits long, representing a number. A problem that can and does occur in this process is that a bit or two may get scrambled during transmission. So, I will append a “parity check digit” to the front of my message. If the message has the label $m$, then the parity check function will be $p(m)$ and it will have the value

\[p(m)=\begin{cases}0 & \text{if the number of 1s in $m$ is even}\cr 1 & \text{if the number of 1s in $m$ is odd}\end{cases}.\]

So, the message I am sending now looks something like $p(m)\ |\ m$. For instance, if I wanted to send you the number 5, my initial message would be $m=000101$, representing the number 5 in binary. Now, since there are an even number of 1s in this message, we have $p(m)=0$, and so our seven bit message now reads $0000101$. When the person on the other end receives this message, they will be able to detect if any single bit has been changed.

## The Limitations of Computers

Most modern computers are 64-bit machines, meaning that each block of data they consider is 64-bits in length. This page contains information far beyond the scope of this class, but the table near the top of the page shows how large various types of integers can be based on how many bits are used to store the integer. When we are working in a computer system that isn’t capable of working with big enough integers, we have a situation called “overflow.” When programmers make an error in not knowing the limitations of their computers, big things can go wrong as a result. A classic example is the Ariane 5 rocket explosion.

**Due Friday, April 5**

Convert the following numbers from base-2 to base-10.

- 1011
- 110010

Convert the following numbers from base-10 to base-2.

- 18
- 154

We reviewed a bit about the Warlpiri and considered how quickly one can have a descendant in a specific section number. Then, we started to look at error correcting codes by looking at base-2 numbers. See this web page for a discussion about converting from base-2 to base-10, and vice-versa.

On Wednesday, we’ll look more at base-2 numbers and consider sending messages and how we might retrieve a scrambled message.

**Due Wednesday, April 3**

- Is it possible for a (male) member of the Warlpiri society to marry his sister? parent? aunt? first cousin? Explain how you know each of these to be possible or not.
- Given that a mother is in $S_7$, her first generation offspring are always in $S_8$. What is the fewest number of generations needed for her to have a member of her family tree (children, grandchildren, great grandchildren, etc.) be in $S_2$? in $S_6$?
- Which section number is the father of the mother of the mother of the father of a person in $S_3$ in?