Handout 8 Tuples, Sets and Dictionaries

Total Page:16

File Type:pdf, Size:1020Kb

Handout 8 Tuples, Sets and Dictionaries Handout 8 CS602 –Data-Driven Development with –Spring’21 Page 1 of 6 Handout 8 Tuples, Sets and Dictionaries. TUPLE Tuples are like lists (ordered collection of objects) except they are immutable. Used, when you need an ordered collection that will not be changed. • Tuples are created with commas, or using tuple() function >>> t = 3, 'foo' >>> t (3, 'foo') >>> t = tuple('abcdef') >>> t ('a', 'b', 'c', 'd', 'e', 'f') • Empty tuples are constructed by an empty pair of parentheses • A tuple with one item is constructed by following a value with a comma (it is not sufficient to enclose a single value in parentheses). >>> e = () >>> e () >>> s = 'hi' >>> s 'hi' >>> s = 'hi', >>> s ('hi',) >>> len(s) 1 • Sequence packing/unpacking: >>> a = 45, 'g', 456.6 >>> a (45, 'g', 456.6) >>> b, c, d = a >>> b 45 >>> c 'g' >>> d 456.6 • Slicing >>> t = tuple('abcdef') >>> t ('a', 'b', 'c', 'd', 'e', 'f') >>> t [1:5:2] ('b', 'd') - 1 - Handout 8 CS602 –Data-Driven Development with –Spring’21 Page 2 of 6 >>> t [:-3] ('a', 'b', 'c') >>> t[4:] ('e', 'f'): • Subtle point: composition of a tuple cannot be changed (i.e. references to objects in a tuple stay the same), but if a tuple contains a mutable object, that object content can be changed. >>> tu = 5, 'foo', [3,4,5] >>> tu (5, 'foo', [3, 4, 5]) >>> tu[0] = 6 TypeError: 'tuple' object does not support item assignment >>> tu[2][0] = 1000 >>> tu (5, 'foo', [1000, 4, 5]) Methods applicable to tuples t.count(e): int returns occurrences of element e in a tuple t t.index(e): int returns smallest index of element e in tuple t; run time error if e not in t Functions applicable to tuples any(t) :bool returns true if at least one element of an iterable is equivalent to True all(t) :bool returns true when all elements in iterable is equivalent to True len(t) :int returns length of an object max(t) returns largest element min(t) returns smallest element sorted(t): lst returns sorted list from a given iterable sum(t): returns sum of items of an iterable zip (s1,s2,..):lst returns an iterable, composed of tuples of individual elements from sequences s1, s2, … at the same index Example: ''' Iterating over zipped sequences ''' city =['Boston', 'Paris', 'Lagos'] area = [11700, 17174, 2706] #sq km population =[4628910, 12405426, 21000000] for ci,a,pop in zip(city, area, population): print ('popluation density of ', ci, 'is', round( pop/a, 1)) - 2 - Handout 8 CS602 –Data-Driven Development with –Spring’21 Page 3 of 6 SET A set is an unordered collection with no duplicate elements. Sets are mutable, supporting add/remove/ Basic uses include membership testing and eliminating duplicate entries. Set objects also support mathematical operations like union, intersection, difference, and symmetric difference. Create sets using curly braces {} or the set() function . Note: to create an empty set you have to use set(), not {}; the latter creates an empty dictionary. Operations on sets: in, not in, len(), max(), min() Set operations as methods: intersection, union, difference, symmetric_difference, issubset, issuperset, isdisjoint Same set operations as binary operations: &, |, -, ^ Set-modifying methods: s.add (e): add element e to set s. s.remove (e): remove element e from set s; error if e is not in s. s.discard (e): remove element e from set s, if it is present. s.clear() removes all elements from s Examples: >>> s = {1,2,3} >>> s.add(1) >>> s {1, 2, 3} >>> s[2] =4 TypeError: 'set' object does not support item assignment >>> s {1, 2, 3} >>> a = {2, 3, 40, 50} >>> s.intersection(a) {2, 3} >>> s.difference(a) {1} >>> s.union(a) {1, 2, 3, 40, 50} >>> s | a {1, 2, 3, 40, 50} >>> s.symmetric_difference(a) {1, 40, 50} >>> a ^ s {1, 40, 50} - 3 - Handout 8 CS602 –Data-Driven Development with –Spring’21 Page 4 of 6 DICTIONARY Dictionary, a.k.a hash map or associative array, is a flexibly-sized collection of key-value pairs, where key and value are Python objects. • Key-value pairs are not stored in any specific order. • Keys must be of an immutable type (e.g. int, string, tuple). • Value can be of any type. • Create a dictionary by using curly braces{} and listing key:value pairs separated by a comma: dict = {} # Create an empty dictionary dict = {"john":40, "peter":45} # Create a dictionary • To add an entry to a dictionary: dictionary[key] = value, e.g. dict["susan"] = 50 To delete an entry from a dictionary, use del dictionary[key] • To check if a key is in the dictionary: in Method(params):returns Description d.keys():dict_keys Returns a sequence of keys. d.values():dict_values Returns a sequence of values. d.items():dict_items Returns a sequence of tuples (key, value). d.clear(): None Deletes all entries. d.get(key): value Returns the value for the key. d.pop(key): value Removes the entry for the key and returns its value. Examples: >>> names = { 'Courtney':753, 'Alexis':119, 'Steven':279 } >>> names {'Courtney': 753, 'Alexis': 119, 'Steven': 279} >>> 'John' in names False >>> 'Alexis' in names True >>> names['Steven'] = 35 >>> names {'Courtney': 753, 'Alexis': 119, 'Steven': 35} >>> names['Mark'] = 463 >>> names {'Courtney': 753, 'Alexis': 119, 'Steven': 35, 'Mark': 463} >>> names.get('susan') None >>> names.get('Alexis') 119 # Iterating examples: >>> for n,v in names.items(): >>> print (n, v) Courtney 753 - 4 - Handout 8 CS602 –Data-Driven Development with –Spring’21 Page 5 of 6 Alexis 119 Steven 35 Mark 463 >>> for n in names: >>> print(names[n]) 753 119 35 463 >>> len(names) 4 >>> names.pop('Courtney') 753 >>> names {'Alexis': 119, 'Steven': 279, 'Mark': 463} DICTIONARIES AND SORTING Dictionary object cannot be made to arrange its items in any particular order. However, it can be accessed in a specific order. Function sorted helps with that. names = { 'Courtney':753, 'Alexis':119, 'Steven':15 } keysSortedLst = sorted(names.items()) print(keysSortedLst) prints: [('Alexis', 119), ('Courtney', 753), ('Steven', 15)] What if you want to access the dict in the order of values, for example? Supply an additional parameter key to sorted, which will specify the value by which to sort. That parameter is a function, which returns the second element in a tuple. names = { 'Courtney':753, 'Alexis':119, 'Steven':15 } #define a function, which will extract the second element in a sequence: def itemvalue(tuple): # return the second element. For a dictionary item - that would be the value return tuple[1] valueSortedList = sorted(names.items(), key=itemvalue) print(valueSortedList) prints: [('Steven', 15), ('Alexis', 119), ('Courtney', 753)] Function sorted (iterable, key=None, reverse=False) Returns a new sorted list from the items in iterable. • iterable -- an object capable of returning its members one at a time. Examples of iterables include all sequence types (such as list, str, and tuple) and some non-sequence types like dict, file objects - 5 - Handout 8 CS602 –Data-Driven Development with –Spring’21 Page 6 of 6 • key -- specifies a function of one argument that is used to extract a comparison key from each element in iterable (for example, key =str.lower). The default value is None (compare the elements directly). • reverse is a boolean value. If set to True, then the list elements are sorted as if each comparison were reversed. COMPREHENSIONS Comprehension syntax can be used to also create sets and dictionaries. Practice problem: Assume speech1.txt and speech2.txt are two files containing texts of speeches in ‘text’ subfolder of the current working directory. Define functions to 1. Open the files and process the text of the two speeches to remove punctuation and stop words (see posted file stopwords.py), 2. Find and return a collection of words that are present in both speeches 3. For each speech, find and return 10 most frequent words. 4. Find and return 10 most frequent words among the words present in both speeches. 5. Find and return 10 most frequent words among those that are unique for one of the speeches. - 6 - .
Recommended publications
  • Formal Construction of a Set Theory in Coq
    Saarland University Faculty of Natural Sciences and Technology I Department of Computer Science Masters Thesis Formal Construction of a Set Theory in Coq submitted by Jonas Kaiser on November 23, 2012 Supervisor Prof. Dr. Gert Smolka Advisor Dr. Chad E. Brown Reviewers Prof. Dr. Gert Smolka Dr. Chad E. Brown Eidesstattliche Erklarung¨ Ich erklare¨ hiermit an Eides Statt, dass ich die vorliegende Arbeit selbststandig¨ verfasst und keine anderen als die angegebenen Quellen und Hilfsmittel verwendet habe. Statement in Lieu of an Oath I hereby confirm that I have written this thesis on my own and that I have not used any other media or materials than the ones referred to in this thesis. Einverstandniserkl¨ arung¨ Ich bin damit einverstanden, dass meine (bestandene) Arbeit in beiden Versionen in die Bibliothek der Informatik aufgenommen und damit vero¨ffentlicht wird. Declaration of Consent I agree to make both versions of my thesis (with a passing grade) accessible to the public by having them added to the library of the Computer Science Department. Saarbrucken,¨ (Datum/Date) (Unterschrift/Signature) iii Acknowledgements First of all I would like to express my sincerest gratitude towards my advisor, Chad Brown, who supported me throughout this work. His extensive knowledge and insights opened my eyes to the beauty of axiomatic set theory and foundational mathematics. We spent many hours discussing the minute details of the various constructions and he taught me the importance of mathematical rigour. Equally important was the support of my supervisor, Prof. Smolka, who first introduced me to the topic and was there whenever a question arose.
    [Show full text]
  • Equivalents to the Axiom of Choice and Their Uses A
    EQUIVALENTS TO THE AXIOM OF CHOICE AND THEIR USES A Thesis Presented to The Faculty of the Department of Mathematics California State University, Los Angeles In Partial Fulfillment of the Requirements for the Degree Master of Science in Mathematics By James Szufu Yang c 2015 James Szufu Yang ALL RIGHTS RESERVED ii The thesis of James Szufu Yang is approved. Mike Krebs, Ph.D. Kristin Webster, Ph.D. Michael Hoffman, Ph.D., Committee Chair Grant Fraser, Ph.D., Department Chair California State University, Los Angeles June 2015 iii ABSTRACT Equivalents to the Axiom of Choice and Their Uses By James Szufu Yang In set theory, the Axiom of Choice (AC) was formulated in 1904 by Ernst Zermelo. It is an addition to the older Zermelo-Fraenkel (ZF) set theory. We call it Zermelo-Fraenkel set theory with the Axiom of Choice and abbreviate it as ZFC. This paper starts with an introduction to the foundations of ZFC set the- ory, which includes the Zermelo-Fraenkel axioms, partially ordered sets (posets), the Cartesian product, the Axiom of Choice, and their related proofs. It then intro- duces several equivalent forms of the Axiom of Choice and proves that they are all equivalent. In the end, equivalents to the Axiom of Choice are used to prove a few fundamental theorems in set theory, linear analysis, and abstract algebra. This paper is concluded by a brief review of the work in it, followed by a few points of interest for further study in mathematics and/or set theory. iv ACKNOWLEDGMENTS Between the two department requirements to complete a master's degree in mathematics − the comprehensive exams and a thesis, I really wanted to experience doing a research and writing a serious academic paper.
    [Show full text]
  • Naïve Set Theory Basic Definitions Naïve Set Theory Is the Non-Axiomatic Treatment of Set Theory
    Naïve Set Theory Basic Definitions Naïve set theory is the non-axiomatic treatment of set theory. In the axiomatic treatment, which we will only allude to at times, a set is an undefined term. For us however, a set will be thought of as a collection of some (possibly none) objects. These objects are called the members (or elements) of the set. We use the symbol "∈" to indicate membership in a set. Thus, if A is a set and x is one of its members, we write x ∈ A and say "x is an element of A" or "x is in A" or "x is a member of A". Note that "∈" is not the same as the Greek letter "ε" epsilon. Basic Definitions Sets can be described notationally in many ways, but always using the set brackets "{" and "}". If possible, one can just list the elements of the set: A = {1,3, oranges, lions, an old wad of gum} or give an indication of the elements: ℕ = {1,2,3, ... } ℤ = {..., -2,-1,0,1,2, ...} or (most frequently in mathematics) using set-builder notation: S = {x ∈ ℝ | 1 < x ≤ 7 } or {x ∈ ℝ : 1 < x ≤ 7 } which is read as "S is the set of real numbers x, such that x is greater than 1 and less than or equal to 7". In some areas of mathematics sets may be denoted by special notations. For instance, in analysis S would be written (1,7]. Basic Definitions Note that sets do not contain repeated elements. An element is either in or not in a set, never "in the set 5 times" for instance.
    [Show full text]
  • Bijections and Infinities 1 Key Ideas
    INTRODUCTION TO MATHEMATICAL REASONING Worksheet 6 Bijections and Infinities 1 Key Ideas This week we are going to focus on the notion of bijection. This is a way we have to compare two different sets, and say that they have \the same number of elements". Of course, when sets are finite everything goes smoothly, but when they are not... things get spiced up! But let us start, as usual, with some definitions. Definition 1. A bijection between a set X and a set Y consists of matching elements of X with elements of Y in such a way that every element of X has a unique match, and every element of Y has a unique match. Example 1. Let X = f1; 2; 3g and Y = fa; b; cg. An example of a bijection between X and Y consists of matching 1 with a, 2 with b and 3 with c. A NOT example would match 1 and 2 with a and 3 with c. In this case, two things fail: a has two partners, and b has no partner. Note: if you are familiar with these concepts, you may have recognized a bijection as a function between X and Y which is both injective (1:1) and surjective (onto). We will revisit the notion of bijection in this language in a few weeks. For now, we content ourselves of a slightly lower level approach. However, you may be a little unhappy with the use of the word \matching" in a mathematical definition. Here is a more formal definition for the same concept.
    [Show full text]
  • Axioms of Set Theory and Equivalents of Axiom of Choice Farighon Abdul Rahim Boise State University, [email protected]
    Boise State University ScholarWorks Mathematics Undergraduate Theses Department of Mathematics 5-2014 Axioms of Set Theory and Equivalents of Axiom of Choice Farighon Abdul Rahim Boise State University, [email protected] Follow this and additional works at: http://scholarworks.boisestate.edu/ math_undergraduate_theses Part of the Set Theory Commons Recommended Citation Rahim, Farighon Abdul, "Axioms of Set Theory and Equivalents of Axiom of Choice" (2014). Mathematics Undergraduate Theses. Paper 1. Axioms of Set Theory and Equivalents of Axiom of Choice Farighon Abdul Rahim Advisor: Samuel Coskey Boise State University May 2014 1 Introduction Sets are all around us. A bag of potato chips, for instance, is a set containing certain number of individual chip’s that are its elements. University is another example of a set with students as its elements. By elements, we mean members. But sets should not be confused as to what they really are. A daughter of a blacksmith is an element of a set that contains her mother, father, and her siblings. Then this set is an element of a set that contains all the other families that live in the nearby town. So a set itself can be an element of a bigger set. In mathematics, axiom is defined to be a rule or a statement that is accepted to be true regardless of having to prove it. In a sense, axioms are self evident. In set theory, we deal with sets. Each time we state an axiom, we will do so by considering sets. Example of the set containing the blacksmith family might make it seem as if sets are finite.
    [Show full text]
  • Set Notation and Concepts
    Appendix Set Notation and Concepts “In mathematics you don’t understand things. You just get used to them.” John von Neumann (1903–1957) This appendix is primarily a brief run-through of basic concepts from set theory, but it also in Sect. A.4 mentions set equations, which are not always covered when introducing set theory. A.1 Basic Concepts and Notation A set is a collection of items. You can write a set by listing its elements (the items it contains) inside curly braces. For example, the set that contains the numbers 1, 2 and 3 can be written as {1, 2, 3}. The order of elements do not matter in a set, so the same set can be written as {2, 1, 3}, {2, 3, 1} or using any permutation of the elements. The number of occurrences also does not matter, so we could also write the set as {2, 1, 2, 3, 1, 1} or in an infinity of other ways. All of these describe the same set. We will normally write sets without repetition, but the fact that repetitions do not matter is important to understand the operations on sets. We will typically use uppercase letters to denote sets and lowercase letters to denote elements in a set, so we could write M ={2, 1, 3} and x = 2 as an element of M. The empty set can be written either as an empty list of elements ({})orusing the special symbol ∅. The latter is more common in mathematical texts. A.1.1 Operations and Predicates We will often need to check if an element belongs to a set or select an element from a set.
    [Show full text]
  • SET THEORY for CATEGORY THEORY 3 the Category Is Well-Powered, Meaning That Each Object Has Only a Set of Iso- Morphism Classes of Subobjects
    SET THEORY FOR CATEGORY THEORY MICHAEL A. SHULMAN Abstract. Questions of set-theoretic size play an essential role in category theory, especially the distinction between sets and proper classes (or small sets and large sets). There are many different ways to formalize this, and which choice is made can have noticeable effects on what categorical constructions are permissible. In this expository paper we summarize and compare a num- ber of such “set-theoretic foundations for category theory,” and describe their implications for the everyday use of category theory. We assume the reader has some basic knowledge of category theory, but little or no prior experience with formal logic or set theory. 1. Introduction Since its earliest days, category theory has had to deal with set-theoretic ques- tions. This is because unlike in most fields of mathematics outside of set theory, questions of size play an essential role in category theory. A good example is Freyd’s Special Adjoint Functor Theorem: a functor from a complete, locally small, and well-powered category with a cogenerating set to a locally small category has a left adjoint if and only if it preserves small limits. This is always one of the first results I quote when people ask me “are there any real theorems in category theory?” So it is all the more striking that it involves in an essential way notions like ‘locally small’, ‘small limits’, and ‘cogenerating set’ which refer explicitly to the difference between sets and proper classes (or between small sets and large sets). Despite this, in my experience there is a certain amount of confusion among users and students of category theory about its foundations, and in particular about what constructions on large categories are or are not possible.
    [Show full text]
  • An Introduction to Set Theory
    AN INTRODUCTION TO SET THEORY Professor William A. R. Weiss November 21, 2014 2 Contents 0 Introduction 7 1 LOST 11 2 FOUND 23 3 The Axioms of Set Theory 29 4 The Natural Numbers 37 5 The Ordinal Numbers 47 6 Relations and Orderings 59 7 Cardinality 69 8 What's So Real About The Real Numbers? 79 9 Ultrafilters Are Useful 87 3 4 CONTENTS 10 The Universe 97 11 Reflection 103 12 Elementary Submodels 123 13 Constructibility 139 14 Appendices 155 .1 The Axioms of ZFC . 155 .2 Tentative Axioms . 156 CONTENTS 5 Preface These notes for a graduate course in set theory are on their way to be- coming a book. They originated as handwritten notes in a course at the University of Toronto given by Prof. William Weiss. Cynthia Church pro- duced the first electronic copy in December 2002. James Talmage Adams produced a major revision in February 2005. The manuscript has seen many changes since then, often due to generous comments by students, each of whom I here thank. Chapters 1 to 11 are now close to final form. Chapters 12 and 13 are quite readable, but should not be considered as a final draft. One more chapter will be added. 6 CONTENTS Chapter 0 Introduction Set Theory is the true study of infinity. This alone assures the subject of a place prominent in human culture. But even more, Set Theory is the milieu in which mathematics takes place today. As such, it is expected to provide a firm foundation for all the rest of mathematics.
    [Show full text]
  • Abstract Algebra Discussions - Week 3
    MATH 410 - ABSTRACT ALGEBRA DISCUSSIONS - WEEK 3 CAN OZAN OGUZ 1. Sets A set is the most basic algebraic structure one can have. It is a collection of elements, and that is that. We can't say anything else about a set. It has no other structure. In fact, there is a little more to it. Set might look like a very basic concept, and this is why todays mathematics is all based on sets, however that means set theory is not based on anything. Therefore we don't have good definitions to answer the questions "What is a set?" and "What is an element?". Surely these questions caused a lot of trouble within the mathematics community especially since the beginning of 20th century. But once you don't ask these two questions, you should be on a safe ground. For example, we can answer the question "What is a vector space?" easily by referring to sets. Similarly we can answer the question "What is a function?" by saying it is a special relation, and a relation is a subset of a particular set. We are not going to deal with set theory too much, but let's say a few things about them since after all a group and a ring is a set with some properties. One important example is the empty set ?. It has no elements, and it is the only set with this property. It is easy work with the empty set. Suppose we want to prove that all elements of the empty set are even integers.
    [Show full text]
  • The Axiom of Determinacy
    Virginia Commonwealth University VCU Scholars Compass Theses and Dissertations Graduate School 2010 The Axiom of Determinacy Samantha Stanton Virginia Commonwealth University Follow this and additional works at: https://scholarscompass.vcu.edu/etd Part of the Physical Sciences and Mathematics Commons © The Author Downloaded from https://scholarscompass.vcu.edu/etd/2189 This Thesis is brought to you for free and open access by the Graduate School at VCU Scholars Compass. It has been accepted for inclusion in Theses and Dissertations by an authorized administrator of VCU Scholars Compass. For more information, please contact [email protected]. College of Humanities and Sciences Virginia Commonwealth University This is to certify that the thesis prepared by Samantha Stanton titled “The Axiom of Determinacy” has been approved by his or her committee as satisfactory completion of the thesis requirement for the degree of Master of Science. Dr. Andrew Lewis, College of Humanities and Sciences Dr. Lon Mitchell, College of Humanities and Sciences Dr. Robert Gowdy, College of Humanities and Sciences Dr. John Berglund, Graduate Chair, Mathematics and Applied Mathematics Dr. Robert Holsworth, Dean, College of Humanities and Sciences Dr. F. Douglas Boudinot, Graduate Dean Date © Samantha Stanton 2010 All Rights Reserved The Axiom of Determinacy A thesis submitted in partial fulfillment of the requirements for the degree of Master of Science at Virginia Commonwealth University. by Samantha Stanton Master of Science Director: Dr. Andrew Lewis, Associate Professor, Department Chair Department of Mathematics and Applied Mathematics Virginia Commonwealth University Richmond, Virginia May 2010 ii Acknowledgment I am most appreciative of Dr. Andrew Lewis. I would like to thank him for his support, patience, and understanding through this entire process.
    [Show full text]
  • 1. the Zermelo Fraenkel Axioms of Set Theory
    1. The Zermelo Fraenkel Axioms of Set Theory The naive definition of a set as a collection of objects is unsatisfactory: The objects within a set may themselves be sets, whose elements are also sets, etc. This leads to an infinite regression. Should this be allowed? If the answer is “yes”, then such a set certainly would not meet our intuitive expectations of a set. In particular, a set for which A A holds contradicts our intuition about a set. This could be formulated as a first∈ axiom towards a formal approach towards sets. It will be a later, and not very essential axiom. Not essential because A A will not lead to a logical contradiction. This is different from Russel’s paradox:∈ Let us assume that there is something like a universe of all sets. Given the property A/ A it should define a set R of all sets for which this property holds. Thus R = A∈ A/ A . Is R such a set A? Of course, we must be able to ask this { | ∈ } question. Notice, if R is one of the A0s it must satisfy the condition R/ R. But by the very definition of R, namely R = A A/ A we get R R iff R/∈ R. Of course, this is a logical contradiction. But{ how| can∈ } we resolve it?∈ The answer∈ will be given by an axiom that restricts the definition of sets by properties. The scope of a property P (A), like P (A) A/ A, must itself be a set, say B. Thus, instead of R = A A/ A we define≡ for any∈ set B the set R(B) = A A B, A / A .
    [Show full text]
  • 11: the Axiom of Choice and Zorn's Lemma
    11. The Axiom of Choice Contents 1 Motivation 2 2 The Axiom of Choice2 3 Two powerful equivalents of AC5 4 Zorn's Lemma5 5 Using Zorn's Lemma7 6 More equivalences of AC 11 7 Consequences of the Axiom of Choice 12 8 A look at the world without choice 14 c 2018{ Ivan Khatchatourian 1 11. The Axiom of Choice 11.2. The Axiom of Choice 1 Motivation Most of the motivation for this topic, and some explanations of why you should find it interesting, are found in the sections below. At this point, we will just make a few short remarks. In this course specifically, we are going to use Zorn's Lemma in one important proof later, and in a few Big List problems. Since we just learned about partial orders, we will use this time to state and discuss Zorn's Lemma, while the intuition about partial orders is still fresh in the readers' minds. We also include two proofs using Zorn's Lemma, so you can get an idea of what these sorts of proofs look like before we do a more serious one later. We also implicitly use the Axiom of Choice throughout in this course, but this is ubiquitous in mathematics; most of the time we do not even realize we are using it, nor do we need to be concerned about when we are using it. That said, since we need to talk about Zorn's Lemma, it seems appropriate to expand a bit on the Axiom of Choice to demystify it a little bit, and just because it is a fascinating topic.
    [Show full text]