{
localUrl: '../page/log_properties.html',
arbitalUrl: 'https://arbital.com/p/log_properties',
rawJsonUrl: '../raw/4bz.json',
likeableId: '2689',
likeableType: 'page',
myLikeValue: '0',
likeCount: '5',
dislikeCount: '0',
likeScore: '5',
individualLikes: [
'AlexeiAndreev',
'EricBruylant',
'NateSoares',
'SzymonSlawinski',
'AlexanderGough'
],
pageId: 'log_properties',
edit: '18',
editSummary: '',
prevEdit: '17',
currentEdit: '18',
wasPublished: 'true',
type: 'wiki',
title: 'Properties of the logarithm',
clickbait: '',
textLength: '9088',
alias: 'log_properties',
externalUrl: '',
sortChildrenBy: 'likes',
hasVote: 'false',
voteType: '',
votesAnonymous: 'false',
editCreatorId: 'AdomHartell',
editCreatedAt: '2016-10-21 01:01:11',
pageCreatorId: 'NateSoares',
pageCreatedAt: '2016-06-15 06:10:54',
seeDomainId: '0',
editDomainId: 'AlexeiAndreev',
submitToDomainId: '0',
isAutosave: 'false',
isSnapshot: 'false',
isLiveEdit: 'true',
isMinorEdit: 'false',
indirectTeacher: 'false',
todoCount: '2',
isEditorComment: 'false',
isApprovedComment: 'true',
isResolved: 'false',
snapshotText: '',
anchorContext: '',
anchorText: '',
anchorOffset: '0',
mergedInto: '',
isDeleted: 'false',
viewCount: '179',
text: '[summary:\n\n- $\\log_b(x \\cdot y) = \\log_b(x) + \\log_b(y)$ for any $b$, this is the defining characteristic of logarithms.\n- $\\log_b(1) = 0,$ because $\\log_b(1) = \\log_b(1 \\cdot 1) = \\log_b(1) + \\log_b(1).$\n- $\\log_b\\left(\\frac{1}{x}\\right) = -\\log_b(x),$ because $\\log_b(1) = \\log_b\\left(x \\cdot \\frac{1}{x}\\right) = \\log_b(x) + \\log_b\\left(\\frac{1}{x}\\right) = 0.$\n- $\\log_b\\left(\\frac{x}{y}\\right) = \\log_b(x) - \\log_b(y),$ which follows immediately from the above.\n- $\\log_b\\left(x^n\\right) = n \\cdot \\log_b(x),$ because $x^n$ = $\\underbrace{x \\cdot x \\cdot \\ldots x}_{n\\text{ times}}$.\n- $\\log_b\\left(\\sqrt[n]{x}\\right) = \\frac{\\log_b(x)}{n},$ because $\\log_b(x) = \\log_b\\left((\\sqrt[n]{x})^n\\right) = n \\cdot \\log_b(\\sqrt[n]{x}).$\n- For every $f$ that satisfies $f(x \\cdot y) = f(x) + f(y)$ for all $x, y \\in \\mathbb R^+,$ either $f$ sends every input to 0 or there exists some $b$ such that $f(b) = 1,$ in which case we call $f$ $\\log_b.$ Thus, $\\log_b(b) = 1.$\n- $\\log_b(b^n) = n,$ because $\\log_b(x^n) = n \\log_b(x)$ and $\\log_b(b) = 1.$\n]\n\nWith a [45q solid interpretation of logarithms] under our belt, we are now in a position to look at the basic properties of the logarithm and understand what they are saying. The defining [47k characteristic of logarithm functions] is that they are [-real_valued] functions $f$ such that\n\n__Property 1: Multiplying inputs adds outputs.__\n$$\nf(x \\cdot y) = f(x) + f(y) \\tag{1}\n$$\nfor all $x, y \\in$ [positive_reals $\\mathbb R^+$]. This says that whenever the input grows (or shrinks) by a factor of $y$, the output goes up (or down) by only a fixed amount, which depends on $y$. In fact, equation (1) alone tells us quite a bit about the behavior of $f,$ and from it, we can _almost_ guarantee that $f$ is a logarithm function. First, let's see how far we can get using equation (1) all by itself:\n\n---\n\n__Property 2: 1 is mapped to 0.__\n$$\nf(1) = 0. \\tag{2}\n$$\n\nThis says that the amount the output changes if the input grows by a factor of 1 is zero — i.e., the output does not change if the input changes by a factor of 1. This is obvious, as "the input changed by a factor of 1" means "the input did not change."\n\n__Exercise:__ Prove (2) from (1).\n%%hidden(Proof):\n$$f(x) = f(x \\cdot 1) = f(x) + f(1),\\text{ so }f(1) = 0.$$\n%%\n\n---\n\n__Property 3: Reciprocating the input negates the output.__\n$$\nf(x) = -f\\left(\\frac{1}{x}\\right). \\tag{3}\n$$\n\nThis says that the way that growing the input by a factor of $x$ changes the output is exactly the opposite from the way that shrinking the input by a factor of $x$ changes the output. In terms of the "communication cost" interpretation, if doubling (or tripling, or $n$-times-ing) the possibility space increases costs by $c$, then halving (or thirding, or $n$-parts-ing) the space decreases costs by $c.$\n\n__Exercise:__ Prove (3) from (2) and (1).\n%%hidden(Proof):\n$$x \\cdot \\frac{1}{x} = 1,\\text{ so }f(1) = f\\left(x \\cdot \\frac{1}{x}\\right) = f(x) + f\\left(\\frac{1}{x}\\right).$$\n\n$$f(1)=0,\\text{ so }f(x)\\text{ and }f\\left(\\frac{1}{x}\\right)\\text{ must be opposites.}$$\n%%\n\n---\n\n__Property 4: Dividing inputs subtracts outputs.__\n\n$$\nf\\left(\\frac{x}{y}\\right) = f(x) - f(y). \\tag{4}\n$$\n\nThis follows immediately from (1) and (3).\n\n__Exercise:__ Give an interpretation of (4).\n%%hidden(Interpretation):\nThere are at least two good interpretations:\n\n1. $f\\left(x \\cdot \\frac{1}{y}\\right) = f(x) - f(y),$ i.e., shrinking the input by a factor of $y$ is the opposite of growing the input by a factor of $y.$\n2. $f\\left(z \\cdot \\frac{x}{y}\\right) = f(z) + f(x) - f(y),$ i.e., growing the input by a factor of $\\frac{x}{y}$ affects the output just like growing the input by $x$ and then shrinking it by $y.$\n\nTry translating these into the communication cost interpretation if it is not clear why they're true.\n%%\n\n---\n\n__Property 5: Exponentiating the input multiplies the output.__\n\n$$\nf\\left(x^n\\right) = n \\cdot f(x). \\tag{5}\n$$\n\nThis says that multiplying the input by $x$, $n$ times incurs $n$ identical changes to the output. In terms of the communication cost metaphor, this is saying that you can emulate an $x^n$ digit using $n$ different $x$-digits.\n\n__Exercise:__ Prove (5).\n%%hidden(Proof):\nThis is easy to prove when $n \\in \\mathbb N:$\n$$f\\left(x^n\\right) = f(\\underbrace{x \\cdot x \\cdot \\ldots x}_{n\\text{ times}}) = \\underbrace{f(x) + f(x) + \\ldots f(x)}_{n\\text{ times}} = n \\cdot f(x).$$\n\nFor $n \\in \\mathbb Q,$ this is a bit more difficult; we leave it as an exercise to the reader. Hint: Use the proof of (6) below, for $n \\in \\mathbb N,$ to bootstrap up to the case where $n \\in \\mathbb Q.$\n\nFor $n \\in \\mathbb R,$ this is actually _not_ provable from (1) alone; we need an additional assumption (such as [-continuity]) on $f$.\n%%\n\nProperty 5 is actually _false,_ in full generality — it's possible to create a function $f$ that obeys (1), and obeys (5) for $n \\in \\mathbb Q,$ but which exhibits pathological behavior on irrational numbers. For more on this, see [ pathological near-logarithms].\n\nThis is the first place that property (1) fails us: 5 is true for $n \\in \\mathbb Q,$ but if we want to guarantee that it's true for $n \\in \\mathbb R,$ we need $f$ to be [continuity continuous], i.e. we need to ensure that if $f$ follows 5 on the rationals it's not allowed to do anything insane on irrational numbers only.\n\n---\n\n__Property 6: Rooting the input divides the output.__\n\n$$\nf(\\sqrt[n]{x}) = \\frac{f(x)}{n}. \\tag{6}\n$$\n\nThis says that, to change the output one $n$th as much as you would if you multiplied the input by $x$, multiply the input by the $n$th root of $x$. See [44l] for a physical interpretation of this fact.\n\n__Exercise:__ Prove (6).\n%%hidden(Proof):\n$$(\\sqrt[n]{x})^n = x,\\text{ so }f\\left((\\sqrt[n]{x})^n\\right)\\text{ has to equal }f(x).$$\n\n$$f\\left((\\sqrt[n]{x})^n\\right) = n \\cdot f(\\sqrt[n]{x}),\\text{ so }f(\\sqrt[n]{x}) = \\frac{f(x)}{n}.$$\n%%\n\nAs with (5), (6) is always true if $n \\in \\mathbb Q,$ but not necessarily always true if $n \\in \\mathbb R.$ To prove (6) in full generality, we additionally require that $f$ be continuous.\n\n---\n\n__Property 7: The function is either trivial, or sends some input to 1.__\n\n$$\n\\text{Either $f$ sends all inputs to $0$, or there exists a $b \\neq 1$ such that $f(b)=1.$}\\tag{7}\n$$\n\nThis says that either $f$ is very boring (and does nothing regardless of its inputs), or there is some particular factor $b$ such that when the input changes by a factor of $b$, the output changes by exactly $1$. In the communication cost interpretation, this says that if you're measuring communication costs, you've got to pick some unit (such as $b$-digits) with which to measure.\n\n__Exercise:__ Prove (7).\n%%%hidden(Proof):\nSuppose $f$ does not send all inputs to $0$, and let $x$ be an input that $f$ sends to some $y \\neq 0.$ Then $f(\\sqrt[y]{x}) = \\frac{f(x)}{y} = 1.$%%note: You may be wondering, "what if $y$ is negative, or a fraction?" If so, see [ Strange roots]. Short version: $\\sqrt[-3/4]{x}$ is perfectly well-defined.%%\n\n$b$ is $\\sqrt[y]{x}.$ We know that $b \\neq 1$ because $f(b) = 1$ whereas, by (2), $f(1) = 0$.\n%%%\n\n---\n\n__Property 8: If the function is continuous, it is either trivial or a logarithm.__\n\n$$\n\\text{If $f(b)=1$ then } f(b^x) = x. \\tag{8}\n$$\n\nThis property follows immediately from (5). Thus, (8) is always true if $x$ is a [4zq rational], and if $f$ is continuous then it's also true when $x$ is irrational.\n\nProperty (8) states that if $f$ is non-trivial, then it inverts [4ts exponentials] with base $b.$ In other words, $f$ counts the number of $b$-factors in $x$. In other words, $f$ counts how many times you need to multiply $1$ by $b$ to get $x$. In other words, $f = \\log_b$!\n\n---\n\nMany texts take (8) to be the defining characteristic of the logarithm. As we just demonstrated, one can also define logarithms by (1) as [continuity continuous] [trivial_mathematics non-trivial] functions whose outputs grow by a constant (that depends on $y$) whenever their inputs grow by a factor of $y$. All other properties of the logarithm follow from that.\n\nIf you want to remove the "continuous" qualifier, you're still fine as long as you stick to [4zq rational] inputs. If you want to remove the "non-trivial" qualifier, you can interpret the function $z$ that sends everything to zero as [4c8 $\\log_\\infty$]. Allowing $\\log_\\infty$ and restricting ourselves to rational inputs, _every_ function $f$ that satisfies equation (1) is [4f4 isomorphic] to a logarithm function.\n\nIn other words, if you find a function whose output changes by a constant (that depends on $y$) whenever its input grows by a factor of $y$, there is basically only one way it can behave. Furthermore, that function only has one degree of freedom — the choice of $b$ such that $f(b)=1.$ As we will see next, even that degree of freedom is rather paltry: All logarithm functions behave in essentially the same way. As such, if we find any $f$ such that $f(x \\cdot y) = f(x) + f(y)$ (or any physical process well-modeled by such an $f$), then we immediately know quite a bit about how $f$ behaves.\n',
metaText: '',
isTextLoaded: 'true',
isSubscribedToDiscussion: 'false',
isSubscribedToUser: 'false',
isSubscribedAsMaintainer: 'false',
discussionSubscriberCount: '1',
maintainerCount: '1',
userSubscriberCount: '0',
lastVisit: '',
hasDraft: 'false',
votes: [],
voteSummary: 'null',
muVoteSummary: '0',
voteScaling: '0',
currentUserVote: '-2',
voteCount: '0',
lockedVoteType: '',
maxEditEver: '0',
redLinkCount: '0',
lockedBy: '',
lockedUntil: '',
nextPageId: '',
prevPageId: '',
usedAsMastery: 'false',
proposalEditNum: '0',
permissions: {
edit: {
has: 'false',
reason: 'You don't have domain permission to edit this page'
},
proposeEdit: {
has: 'true',
reason: ''
},
delete: {
has: 'false',
reason: 'You don't have domain permission to delete this page'
},
comment: {
has: 'false',
reason: 'You can't comment in this domain because you are not a member'
},
proposeComment: {
has: 'true',
reason: ''
}
},
summaries: {},
creatorIds: [
'NateSoares',
'EricRogstad',
'AdomHartell'
],
childIds: [],
parentIds: [
'logarithm'
],
commentIds: [
'4ck',
'4ms',
'4mt',
'4wf'
],
questionIds: [],
tagIds: [
'b_class_meta_tag'
],
relatedIds: [],
markIds: [],
explanations: [],
learnMore: [],
requirements: [],
subjects: [],
lenses: [],
lensParentId: '',
pathPages: [],
learnMoreTaughtMap: {},
learnMoreCoveredMap: {},
learnMoreRequiredMap: {},
editHistory: {},
domainSubmissions: {},
answers: [],
answerCount: '0',
commentCount: '0',
newCommentCount: '0',
linkedMarkCount: '0',
changeLogs: [
{
likeableId: '3621',
likeableType: 'changeLog',
myLikeValue: '0',
likeCount: '1',
dislikeCount: '0',
likeScore: '1',
individualLikes: [],
id: '20198',
pageId: 'log_properties',
userId: 'AdomHartell',
edit: '18',
type: 'newEdit',
createdAt: '2016-10-21 01:01:11',
auxPageId: '',
oldSettingsValue: '',
newSettingsValue: ''
},
{
likeableId: '0',
likeableType: 'changeLog',
myLikeValue: '0',
likeCount: '0',
dislikeCount: '0',
likeScore: '0',
individualLikes: [],
id: '19597',
pageId: 'log_properties',
userId: 'AlexeiAndreev',
edit: '0',
type: 'deleteTag',
createdAt: '2016-09-15 00:02:16',
auxPageId: 'work_in_progress_meta_tag',
oldSettingsValue: '',
newSettingsValue: ''
},
{
likeableId: '0',
likeableType: 'changeLog',
myLikeValue: '0',
likeCount: '0',
dislikeCount: '0',
likeScore: '0',
individualLikes: [],
id: '19595',
pageId: 'log_properties',
userId: 'AlexeiAndreev',
edit: '0',
type: 'newTag',
createdAt: '2016-09-15 00:02:11',
auxPageId: 'b_class_meta_tag',
oldSettingsValue: '',
newSettingsValue: ''
},
{
likeableId: '0',
likeableType: 'changeLog',
myLikeValue: '0',
likeCount: '0',
dislikeCount: '0',
likeScore: '0',
individualLikes: [],
id: '15308',
pageId: 'log_properties',
userId: 'NateSoares',
edit: '17',
type: 'newEdit',
createdAt: '2016-07-04 19:45:15',
auxPageId: '',
oldSettingsValue: '',
newSettingsValue: ''
},
{
likeableId: '0',
likeableType: 'changeLog',
myLikeValue: '0',
likeCount: '0',
dislikeCount: '0',
likeScore: '0',
individualLikes: [],
id: '15094',
pageId: 'log_properties',
userId: 'NateSoares',
edit: '16',
type: 'newEdit',
createdAt: '2016-07-02 00:06:40',
auxPageId: '',
oldSettingsValue: '',
newSettingsValue: ''
},
{
likeableId: '2903',
likeableType: 'changeLog',
myLikeValue: '0',
likeCount: '1',
dislikeCount: '0',
likeScore: '1',
individualLikes: [],
id: '14992',
pageId: 'log_properties',
userId: 'NateSoares',
edit: '15',
type: 'newEdit',
createdAt: '2016-06-30 19:45:19',
auxPageId: '',
oldSettingsValue: '',
newSettingsValue: ''
},
{
likeableId: '0',
likeableType: 'changeLog',
myLikeValue: '0',
likeCount: '0',
dislikeCount: '0',
likeScore: '0',
individualLikes: [],
id: '14155',
pageId: 'log_properties',
userId: 'EricRogstad',
edit: '14',
type: 'newEdit',
createdAt: '2016-06-20 22:01:24',
auxPageId: '',
oldSettingsValue: '',
newSettingsValue: ''
},
{
likeableId: '0',
likeableType: 'changeLog',
myLikeValue: '0',
likeCount: '0',
dislikeCount: '0',
likeScore: '0',
individualLikes: [],
id: '14154',
pageId: 'log_properties',
userId: 'EricRogstad',
edit: '13',
type: 'newEdit',
createdAt: '2016-06-20 21:57:46',
auxPageId: '',
oldSettingsValue: '',
newSettingsValue: ''
},
{
likeableId: '0',
likeableType: 'changeLog',
myLikeValue: '0',
likeCount: '0',
dislikeCount: '0',
likeScore: '0',
individualLikes: [],
id: '14152',
pageId: 'log_properties',
userId: 'EricRogstad',
edit: '12',
type: 'newEdit',
createdAt: '2016-06-20 21:43:23',
auxPageId: '',
oldSettingsValue: '',
newSettingsValue: ''
},
{
likeableId: '0',
likeableType: 'changeLog',
myLikeValue: '0',
likeCount: '0',
dislikeCount: '0',
likeScore: '0',
individualLikes: [],
id: '14134',
pageId: 'log_properties',
userId: 'EricRogstad',
edit: '11',
type: 'newEdit',
createdAt: '2016-06-20 20:56:59',
auxPageId: '',
oldSettingsValue: '',
newSettingsValue: ''
},
{
likeableId: '0',
likeableType: 'changeLog',
myLikeValue: '0',
likeCount: '0',
dislikeCount: '0',
likeScore: '0',
individualLikes: [],
id: '13405',
pageId: 'log_properties',
userId: 'NateSoares',
edit: '10',
type: 'newEdit',
createdAt: '2016-06-16 23:09:51',
auxPageId: '',
oldSettingsValue: '',
newSettingsValue: ''
},
{
likeableId: '0',
likeableType: 'changeLog',
myLikeValue: '0',
likeCount: '0',
dislikeCount: '0',
likeScore: '0',
individualLikes: [],
id: '13402',
pageId: 'log_properties',
userId: 'NateSoares',
edit: '9',
type: 'newEdit',
createdAt: '2016-06-16 22:44:37',
auxPageId: '',
oldSettingsValue: '',
newSettingsValue: ''
},
{
likeableId: '0',
likeableType: 'changeLog',
myLikeValue: '0',
likeCount: '0',
dislikeCount: '0',
likeScore: '0',
individualLikes: [],
id: '13086',
pageId: 'log_properties',
userId: 'NateSoares',
edit: '8',
type: 'newEdit',
createdAt: '2016-06-15 15:39:12',
auxPageId: '',
oldSettingsValue: '',
newSettingsValue: ''
},
{
likeableId: '0',
likeableType: 'changeLog',
myLikeValue: '0',
likeCount: '0',
dislikeCount: '0',
likeScore: '0',
individualLikes: [],
id: '13082',
pageId: 'log_properties',
userId: 'NateSoares',
edit: '7',
type: 'newEdit',
createdAt: '2016-06-15 15:27:22',
auxPageId: '',
oldSettingsValue: '',
newSettingsValue: ''
},
{
likeableId: '0',
likeableType: 'changeLog',
myLikeValue: '0',
likeCount: '0',
dislikeCount: '0',
likeScore: '0',
individualLikes: [],
id: '12921',
pageId: 'log_properties',
userId: 'NateSoares',
edit: '6',
type: 'newEdit',
createdAt: '2016-06-15 06:49:00',
auxPageId: '',
oldSettingsValue: '',
newSettingsValue: ''
},
{
likeableId: '0',
likeableType: 'changeLog',
myLikeValue: '0',
likeCount: '0',
dislikeCount: '0',
likeScore: '0',
individualLikes: [],
id: '12915',
pageId: 'log_properties',
userId: 'NateSoares',
edit: '0',
type: 'newAlias',
createdAt: '2016-06-15 06:28:13',
auxPageId: '',
oldSettingsValue: '4bz',
newSettingsValue: 'log_properties'
},
{
likeableId: '0',
likeableType: 'changeLog',
myLikeValue: '0',
likeCount: '0',
dislikeCount: '0',
likeScore: '0',
individualLikes: [],
id: '12914',
pageId: 'log_properties',
userId: 'NateSoares',
edit: '5',
type: 'newEdit',
createdAt: '2016-06-15 06:21:07',
auxPageId: '',
oldSettingsValue: '',
newSettingsValue: ''
},
{
likeableId: '0',
likeableType: 'changeLog',
myLikeValue: '0',
likeCount: '0',
dislikeCount: '0',
likeScore: '0',
individualLikes: [],
id: '12908',
pageId: 'log_properties',
userId: 'NateSoares',
edit: '4',
type: 'newEdit',
createdAt: '2016-06-15 06:16:10',
auxPageId: '',
oldSettingsValue: '',
newSettingsValue: ''
},
{
likeableId: '0',
likeableType: 'changeLog',
myLikeValue: '0',
likeCount: '0',
dislikeCount: '0',
likeScore: '0',
individualLikes: [],
id: '12907',
pageId: 'log_properties',
userId: 'NateSoares',
edit: '3',
type: 'newEdit',
createdAt: '2016-06-15 06:13:39',
auxPageId: '',
oldSettingsValue: '',
newSettingsValue: ''
},
{
likeableId: '0',
likeableType: 'changeLog',
myLikeValue: '0',
likeCount: '0',
dislikeCount: '0',
likeScore: '0',
individualLikes: [],
id: '12906',
pageId: 'log_properties',
userId: 'NateSoares',
edit: '2',
type: 'newEdit',
createdAt: '2016-06-15 06:13:16',
auxPageId: '',
oldSettingsValue: '',
newSettingsValue: ''
},
{
likeableId: '0',
likeableType: 'changeLog',
myLikeValue: '0',
likeCount: '0',
dislikeCount: '0',
likeScore: '0',
individualLikes: [],
id: '12905',
pageId: 'log_properties',
userId: 'NateSoares',
edit: '1',
type: 'newEdit',
createdAt: '2016-06-15 06:10:54',
auxPageId: '',
oldSettingsValue: '',
newSettingsValue: ''
},
{
likeableId: '0',
likeableType: 'changeLog',
myLikeValue: '0',
likeCount: '0',
dislikeCount: '0',
likeScore: '0',
individualLikes: [],
id: '12902',
pageId: 'log_properties',
userId: 'NateSoares',
edit: '1',
type: 'newTag',
createdAt: '2016-06-15 06:10:52',
auxPageId: 'work_in_progress_meta_tag',
oldSettingsValue: '',
newSettingsValue: ''
},
{
likeableId: '0',
likeableType: 'changeLog',
myLikeValue: '0',
likeCount: '0',
dislikeCount: '0',
likeScore: '0',
individualLikes: [],
id: '12901',
pageId: 'log_properties',
userId: 'NateSoares',
edit: '1',
type: 'newParent',
createdAt: '2016-06-15 06:10:45',
auxPageId: 'logarithm',
oldSettingsValue: '',
newSettingsValue: ''
}
],
feedSubmissions: [],
searchStrings: {},
hasChildren: 'false',
hasParents: 'true',
redAliases: {},
improvementTagIds: [],
nonMetaTagIds: [],
todos: [],
slowDownMap: 'null',
speedUpMap: 'null',
arcPageIds: 'null',
contentRequests: {}
}