# unclej's blog

## Conjugation Collapses In Commutative Groups

Exercise 3, Ch. 2, Sec. 3 - Algebra (Michael Artin): Let $$a,b$$ be elements of a group $$G$$, and let $$a' = bab^{-1}$$. Prove that $$a = a'$$ if and only if $$a$$ and $$b$$ commute.

Proof:

We have $$a = a' = bab^{-1}$$. Multiplying on the right by $$b$$ we get $$ab = ba(b^{-1}b) = ba$$ and so $$a$$ and $$b$$ commute. This argument is completely reversible so we are done.

## A Simple Statement About Conjugate Elements In A Group.

Exercise 2, Ch. 2, Sec. 3 - Algebra (Michael Artin): Prove that the products $$ab$$ and $$ba$$ are conjugate elements in a group $$G$$.

Proof:

Define $$C_{x}:G\rightarrow G$$ to be conjugation by the element $$x$$. Then $C_b(ab) = b(ab)b^{-1} = ba(bb^{-1}) = ba$ and $C_a(ba) = a(ba)a^{-1} = ab(aa^{-1}) = ab.$ Thus $$ab$$ and $$ba$$ are conjugate elements in $$G$$.

## An Isomorphism Between The Additive Reals And The Positive Reals With Multiplication

Exercise 1, Ch. 2, Sec. 3 - Algebra (Michael Artin): Prove that the additive group $${\mathbb{R}}^{+}$$ is isomorphic to the multiplicative group $$P$$ of positive reals.

Proof:

## PostgreSQL on OpenBSD -- Fatal: role "_postgresql" does not exist

If you have ever tried to setup PostgreSQL on OpenBSD you may have run
into the following (very frustrating) error:

\$ psql postgres
FATAL:  role "_postgresql" does not exist
psql: FATAL:  role "_postgresql" does not exist


I couldn't find any mention of this error in the pkg-readmes at
some serious searching through mailing lists and found the answer
which I'm reproducing here (from
http://www.mail-archive.com/misc@openbsd.org/msg68239.html) since

## All numbers less than 1000 divisible by 3 or 5 in elisp

Just for practice with elisp I've decided to hit Project Euler and see how far I can get coding in elisp. Here's a solution to Problem 1 of Project Euler:


;;;
;;; Problem 1 of Project Euler:
;;;

(defun modprod-three-or-five (x)
"Returns the product of x mod 3 and x mod 5."
(* (% x 3) (% x 5)))

(defun div-by-three-or-five (x)
"Returns x if x is divisible by 3 or 5 otherwise returns 0"
(if (eq (modprod-three-or-five x) 0) x 0))