1959 Philippine Senate election

A senatorial election was held on November 10, 1959 in the Philippines. The 1959 elections were known as the 1959 Philippine midterm elections as the date when the elected officials take office falls halfway through President Carlos P. Garcia's four-year term.

1959 Philippine Senate election

November 10, 1959

8 (of the 24) seats in the Senate
13 seats needed for a majority
  Majority party Minority party
 
Leader Eulogio Rodriguez Ferdinand Marcos
Party Nacionalista Liberal
Leader's seat Nationwide at-large Nationwide at-large
Seats before 20 2
Seats after 19 4
Seat change 1 2
Popular vote 17,160,618 10,850,799
Percentage 50.1% 31.7%
Swing 2.9% 0.1%

  Third party Fourth party
 
Leader Lorenzo Tañada Raul Manglapus
Party NCP Progressive
Leader's seat Nationwide at-large Nationwide at-large (lost)
Seats before 1 0
Seats after 1 0
Seat change      
Popular vote 2,029,200 3,163,609
Percentage 5.9% 9.2%
Swing 1.0% 2.8%

Senate President before election

Eulogio Rodriguez
Nacionalista

Elected Senate President

Eulogio Rodriguez
Nacionalista

This article is part of a series on the
politics and government of
the Philippines
 Philippines portal

The Liberal Party continued chipping away from the Nacionalista Party's dominance in the Senate, winning two more seats, although the Nacionalistas still possessed 19 out of 24 seats in the chamber.

Results

Per candidate

 Summary of the November 10, 1959 Philippine Senate election result
Rank Candidate Party Votes %
1 Ferdinand Marcos Liberal 2,661,15341.6%
2 Genaro Magsaysay Nacionalista 2,457,21838.4%
3 Fernando López Nacionalista 2,366,16637.0%
4 Estanislao Fernandez Liberal 2,071,86532.4%
5 Mariano Jesús Cuenco Nacionalista 2,046,84232.0%
6 Eulogio Rodriguez Nacionalista 2,037,68231.9%
7 Lorenzo Tañada NCP 2,029,20031.7%
8 Alejandro Almendras Nacionalista 1,857,78229.1%
9Edmundo Cea Nacionalista1,764,43627.6%
10Emmanuel Pelaez Nacionalista1,734,33027.1%
11Raul Manglapus Progressive1,651,09725.8%
12Juan Pajo Nacionalista1,623,63725.4%
13Manuel Manahan Progressive1,512,51223.7%
14Sofronio Quimson Nacionalista1,272,52519.9%
15Cornelio Villareal Liberal1,266,82619.8%
16Eleuterio Adevoso Liberal1,035,14716.2%
17Jacinto Borja Liberal1,021,28116.0%
18Jesus VargasGrand Alliance1,001,98115.7%
19Esmeraldo Eco Liberal947,26114.8%
20Duma Sinsuat Liberal687,62210.8%
21Narciso Pimentel, Jr.Grand Alliance621,9159.7%
22Osmundo MondoñedoGrand Alliance537,7298.4%
23Alfredo AbcedeFederal Party27,3830.4%
24Valentin Festejo Independent3,2630.1%
25Gualberto Cruz Independent2,8010.0%
26Narciso AlegreNP2,5960.0%
27Emilio Alcutse Aninao Independent2,3790.0%
28Natalio BeltranCooperative Democratic Party2,2860.0%
29Gregorio Llanza Independent1,7270.0%
30Consuelo Fa Alvear Independent1,2680.0%
31Isaac Eceta Independent1,2090.0%
32Chenchay Reyes Juta Independent1,0480.0%
Total turnout6,393,72481.7%
Total votes28,108,309N/A
Registered voters6,763,897100.0%
Note: A total of 32 candidates ran for senator. Source:[1]

Per party

PartyPopular voteSeats
Total%SwingWonBeforeAfter%+/
Nacionalista 17,160,61851.4% 4.2%5191979.2%
Liberal 10,850,79932.5% 0.7%22416.7% 2
Progressive 3,163,6099.5% 2.6%0000.0%
NCP 2,029,2006.1% 0.9%1014.2% 1
Federal27,3830.1% 0.1%0000.0%
Cooperative Democratic2,2860.0% 0.2%0000.0%
Independent 1,015,6763.0% 2.5%0000.0%
Totals34,249,571100%82424100.0%
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.
gollark: > `globals()[Row + Row] = random.randint(*sys.version_info[:2])`Never actually got used anywhere.> `ε = sys.float_info.epsilon`Also not used. I just like epsilons.> `def __exit__(self, _, _________, _______):`This is also empty, because cleaning up the `_` global would be silly. It'll be overwritten anyway. This does serve a purpose, however, and not just in making it usable as a context manager. This actually swallows all errors, which is used in some places.> `def __pow__(self, m2):`As ever, this is not actual exponentiation. `for i, (ι, 𐌉) in enumerate(zip(self.bigData, m2.bigData)): e.bigData[i] = ι + 𐌉` is in fact just plain and simple addition of two matrices.> `def subtract(forth, 𝕒, polynomial, c, vector_space):`This just merges 4 submatrices back into one matrix.> `with out as out, out, forth:`Apart from capturing the exceptions, this doesn't really do much either. The `_` provided by the context manager is not used.> `_(0j, int(0, 𝕒.n))`Yes, it's used in this line. However, this doesn't actually have any effect whatsoever on the execution of this. So I ignore it. It was merely a distraction.> `with Mаtrix(ℤ(ℤ(4))):`It is used again to swallow exceptions. After this is just some fluff again.> `def strassen(m, x= 3.1415935258989):`This is an interesting part. Despite being called `strassen`, it does not actually implement the Strassen algorithm, which is a somewhat more efficient way to multiply matrices than the naive way used in - as far as I can tell - every entry.> `e = 2 ** (math.ceil(math.log2(m.n)) - 1)`This gets the next power of two in a fairly obvious way. It is used to pad out the matrix to the next power of 2 size.> `with m:`The context manager is used again for nicer lookups.> `Result[0] += [_(0j, int(e, e))]`Weird pythonoquirkiness again. You can append to lists in tuples with `+=`, but it throws an exception as they're sort of immutable.> `typing(lookup[4])(input())`It's entirely possible that this does things.
gollark: > `def __eq__(self, xy): return self.bigData[math.floor(xy.real * self.n + xy.imag)]`This actually gets indices into the matrix. I named it badly for accursedness. It uses complex number coordinates.> `def __matmul__(self, ǫ):`*This* function gets a 2D "slice" of the matrix between the specified coordinates. > `for (fοr, k), (b, р), (whіle, namedtuple) in itertools.product(I(*int.ℝ(start, end)), enumerate(range(ℤ(start.imag), math.floor(end.imag))), (ǫ, ǫ)):`This is really just bizarre obfuscation for the basic "go through every X/Y in the slice" thing.> `out[b * 1j + fοr] = 0`In case the matrix is too big, just pad it with zeros.> `except ZeroDivisionError:`In case of zero divisions, which cannot actually *happen*, we replace 0 with 1 except this doesn't actually work.> `import hashlib`As ever, we need hashlib.> `memmove(id(0), id(1), 27)`It *particularly* doesn't work because we never imported this name.> `def __setitem__(octonion, self, v):`This sets either slices or single items of the matrix. I would have made it use a cool™️ operator, but this has three parameters, unlike the other ones. It's possible that I could have created a temporary "thing setting handle" or something like that and used two operators, but I didn't.> `octonion[sedenion(malloc, entry, 20290, 15356, 44155, 30815, 37242, 61770, 64291, 20834, 47111, 326, 11094, 37556, 28513, 11322)] = v == int(bool, b)`Set each element in the slice. The sharp-eyed may wonder where `sedenion` comes from.> `"""`> `for testing`> `def __repr__(m):`This was genuinely for testing, although the implementation here was more advanced.> `def __enter__(The_Matrix: 2):`This allows use of `Matrix` objects as context managers.> `globals()[f"""_"""] = lambda h, Ĥ: The_Matrix@(h,Ĥ)`This puts the matrix slicing thing into a convenient function accessible globally (as long as the context manager is running). This is used a bit below.
gollark: * desired

See also

References

  1. Christof Hartmann; Graham Hassall; Soliman M. Santos, Jr. (2001). Dieter Nohlen, Florian Grotz and Christof Hartmann (ed.). Elections in Asia and the Pacific Vol. II. Oxford University Press. pp. 185–230. ISBN 0199249598.
This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.