Walter O'Hearn
Walter Finlay O'Hearn (16 October 1890 – 16 September 1950) was an Australian politician, elected as a member of the New South Wales Legislative Assembly.
O'Hearn was born in West Maitland and educated to primary level. He worked at East Greta mine, but lost an arm and leg in pit-top accident. He became a poultry farmer and was later secretary of a small mining company at Leuth Park. He married Catherine Ellen Walsh in 1918 and they had three daughters and two sons.[1]
O'Hearn was elected as a Labor Party member for the Maitland in 1920 and retained the seat until 1932. He died in Maitland.[1]
Notes
- "Mr Walter Finlay O'Hearn (1890-1950)". Former Members of the Parliament of New South Wales. Retrieved 30 April 2019.
New South Wales Legislative Assembly | ||
---|---|---|
Preceded by Charles Nicholson |
Member for Maitland 1920 – 1932 Served alongside: Bennett/None, Cameron/None |
Succeeded by Walter Howarth |
gollark: It allocates memory and doesn't consider it a side effect.
gollark: I didn't do any horrible homoglyph hacks with THAT.
gollark: It uses the function, yes.
gollark: So, I finished that to highly dubious demand. I'd like to know how #11 and such work.
gollark: > `x = _(int(0, e), int(e, е))`You may note that this would produce slices of 0 size. However, one of the `e`s is a homoglyph; it contains `2 * e`.`return Result[0][0], x, m@set({int(e, 0), int(е, e)}), w`From this, it's fairly obvious what `strassen` *really* does - partition `m1` into 4 block matrices of half (rounded up to the nearest power of 2) size.> `E = typing(lookup[2])`I forgot what this is meant to contain. It probably isn't important.> `def exponentiate(m1, m2):`This is the actual multiplication bit.> `if m1.n == 1: return Mаtrix([[m1.bigData[0] * m2.bigData[0]]])`Recursion base case. 1-sized matrices are merely multiplied scalarly.> `aa, ab, ac, ad = strassen(m1)`> `аa, аb, аc, аd = strassen(m2)`More use of homoglyph confusion here. The matrices are quartered.> `m = m1.subtract(exponentiate(aa, аa) ** exponentiate(ab, аc), exponentiate(aa, аb) ** exponentiate(ab, аd), exponentiate(ac, аa) ** exponentiate(ad, аc), exponentiate(ac, аb) ** exponentiate(ad, аd)) @ [-0j, int.abs(m2.n * 3, m1.n)]`This does matrix multiplication in an inefficient *recursive* way; the Strassen algorithm could save one of eight multiplications here, which is more efficient (on big matrices). It also removes the zero padding.> `m = exponentiate(Mаtrix(m1), Mаtrix(m2)) @ (0j * math.sin(math.asin(math.sin(math.asin(math.sin(math.e))))), int(len(m1), len(m1)))`This multiples them and I think also removes the zero padding again, as we want it to be really very removed.> `i += 1`This was added as a counter used to ensure that it was usably performant during development.> `math.factorial = math.sinh`Unfortunately, Python's factorial function has really rather restrictive size limits.> `for row in range(m.n):`This converts back into the 2D array format.> `for performance in sorted(dir(gc)): getattr(gc, performance)()`Do random fun things to the GC.
This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.