text:
## FANDOM

442 Pages

Give your heroes a challenge and fight your way through the endless Grinnfinite Dungeon. If you're good and lucky, you may find some awesome equipment sets that are not available anywhere else! But you'll really have to dig deep into the dungeon to find these. How far, you ask? No one really knows... maybe to GRINNFINITY AND BEYOND!!!

The Grinnfinite Dungeon is one of the dungeons of the game. You can find it at the center of the map, at the bottom right of The Tower, after clearing Floor 13. It consists of many randomly-generated floors which may include chests, monsters, bosses or a mix of both monsters and bosses. Although the first few rooms may seem easy, as you progress further, the monsters become more and more challenging. You can only exit the Grinnfinite Dungeon after clearing a floor, whether it be a battle or opening a chest.

As you defeat monsters, the items they drop are stored in a loot bag and will go into your inventory when you return to town. If your party is wiped out, you will lose all of your loot.

## Room and Monster DifficultyEdit

As you go deeper in Dungeon, number and strength of monsters increase. Monsters have a Difficulty Rating associated. They are selected for a room so that the cumulative difficulty of all the monsters on that room must get to at least 90% of the room difficulty. Difficulty of dungeon rooms is equal to $n^2/2$, where n is the room number. Room difficulty is at least 1.

Note: The formula works until around room 30. Above that point the difficulty becomes more constant around the same value, with random slight increases and decreases. This is even more noticeable above room 40.

For example: room 4 of the dungeon has a dificulty of 8. The only monsters with a Difficulty Rating less that 8 are: Sweeper (1), Bowbat (2), Shocker (2), and Pokey Sweeper (4). So on room 4 you might find: 2 Pokey Sweepers, or 4 Bowbats, or 4 Shockers, or 1 Pokey Sweeper and 1 Bowbat and 1 Shocker, or 1 Pokey Sweeper and 4 Sweepers.

The following table contains Difficulty Ratings of all enemies encountered in the Grinnfinite Dungeon so far. "1st Room" is the number of the earliest room you can encounter the monster.

Enemy Difficulty Rating First Room
Sweeper 1 1
Bowbat 2 2
Shocker 2 2
Pokey Sweeper 4 3
Grand Gatekeeper 10 4
Sureshot 12 5
Zapper 12 5
Thud 16 6
Smoker 18 6
Smogger 20 7
Rockskin 20 7
Smoggie 22 7
Heavy Sweeper 24 7
Sharpshooter 24 7
Sweeper Stu 24 8
Grand Smoker 26 8
Fault 26 8
Jolter 30 8
Stoneskin 38 9
Thunk 40 9
Poison Spider 46 10
Zinger 46 11
Electric Spider 48 10
Grand Ghost 60 11
Mother Poison Spider 60 11
Mother Electric Spider 60 11
Heat Spider 60 11
Thumper 70 12
Scarecog 70 12
Tom Thud 80 13
Thrunk 90 14
Randy Rockskin 90 15
Spikey 100 15
Faust 120 16
Grand Crank 120 17
Grander Gatekeeper 140 17
Osorio Zapper 140 17
Finneas Fault 140 19
Grander Smoker 160 18
Grander Ghost 180 19
Bowbat Billy 180 20
Grander Crank 200 20
Electric Spikey 300 ???
Poison Spikey 300 ???
Thermal Spikey 300 ???
Bombombomb 400 ???
Evil Knight 400 ???
Evil Berserker 400 ???
Evil Wizard 400 29

## Treasure ChestsEdit

The deeper you go in the Dungeon, the better loot you can get from the chest rooms.  But no matter how far you go, you still might end up with a Crude Wing or a Old Broom, instead of what you wanted.

The following table lists the items that can be found in the chests, relative rarity, and the room number before the chest they've been found on, up to room 27.

Item Rarity Room
Healthy Potion common 4-7
Really Healthy Potion rare 12-17
Vibrant Potion somewhat common 6-16
Extreme Potion somewhat rare 16-27
Hardener, De-Shocker, Antidote somewhat common 3-22
Shock, Softie, Poison Potions somewhat common 4-19
Revive Potion rare 11-22
Ragged Cape, Atlas Cape rare 3-13
Scrapper Scarf somewhat common 5-24
Tier 2 items very common 3-23
Tier 3 items rare 14-27
Tier 4 items somewhat common 15-23
Rogue Set items rare 13-22
Sardaukar Set items very rare 12-21
Zweihander Set items very rare 18-27
Big Wrench or Big Rake rare 5-27
Common Crafting Materials incredibly common 7-26
Mysterious Feather rare 16-17
Forest Raccoon Tail very rare 22
Shiny Ruby somewhat rare 10-21
Diamond very rare 8-21

## TipsEdit

UPDATED FOR v0.6.17

The Grinnfinite Dungeon is an area designed for endgame players, the unpredictability and difficulty of mobs that spawn in the area make it difficult for players who are using gear below Tier 5. The key to getting deep mostly involves party and gear setup. That being said, players aim to dive deep in order to get hold of the elusive Tier 5.5 items listed below:

As of this update, I will be assuming that players are using either Tier 5, Tier 5.5 and Tier 6 Gear.

Party Composition:

Suggested:

• Cleric (Haste II, Regen IV, Magic Up IV)
• Archer (Thermobolt II, Ricochet II, Lifesteal II)
• Knight (Sacrifice II, Lifesteal II, Ricochet II / Rage II)
• T5 Wizard (Shockwave II, Chance Up II, Rage II)
• T5 Wizard (Bio Blast II, Magic Up IV, Rage II)

Nice to have:

• Cleric (Heal II, Regen IV, Magic Up IV)
• Berserker (Rage II, Lifesteal II)

General Tips:

• Contrary to popular belief, you don't have to dive too deep into the dungeon to get good items. Refined Rogue/Zweihander Gear, Diamonds, Shiny Rubies, Big Wrench etc. can be found as early as Floors 5-30. I've personally found Refined Zweihander Armor and Refined Rogue Outfit from Floors 29 & 30 respectively. If you're lucky, you may encounter Sweeper Stu and Tom Thud in the first 20 floors. (I encountered Stu in Floor 8)
• Use an Adventurer to last hit Notorious Monsters and Grander Bosses for 2X drops.
• Use animation cancelling. In order to skip the long attack backswing, click the Grinn when his/her action bar is full. This will cancel the animation and have your Grinn immediately execute the attack. Very useful in certain situations, the downside is you have to drag the attack icon again. Does not work with Berserkers.
• The dungeon is very good for low level Grinn leveling, just let them sit in the backup party to leech experience.
• Try not to overextend by going too deep into the dungeon. Once you find the items you want, immediately head back to town as an unexpected disconnect or a fatal mob combination in the next room will make you lose everything.

Battle Tips:

• Identify the biggest threat and adjust your party accordingly, bring an Archer if you see a Fault, Faust or Grand(er) Ghost. Bring Wizard if you see Thrunks, Mother Poison Spiders or Grand(er) Crank.
• When faced with multiple hard-hitting, high defense mobs like Thrunks, Tom Thud and Randy Rockskin (in the back row), have your Knight cast Sacrifice on himself, this should suffice as healing as opposed to having a dedicated healer. Haste your Wizard as many times as you can, with Chance Up II (35% chance to shock) he should be able to lock down a Thrunk or two and deal a considerable amount of damage in the process. A "safer" approach would be to Haste your healer enough to offset the incoming damage.
• For Grander Cranks use a combination of Berserker, Archer and Wizard. Your Wizard with Shockwave II should easily deal 100+ damage to these guys, Grander Cranks are immune to shock so having an Archer scald them and a Berserker in front would cause them to drop very easily. Poison is also the least annoying debuff, at least for me. If faced with 2 of them in a wave, consider placing the Wizard in front with Haster as backup, take note that the Mojomancer Set (Tier 5) has a set bonus of Lifesteal II, and your Wizard equipped with Rage II should end the fight fast in a few turns.
• With the appearance of Steamy Gearheads and Thermal Spikeys, it is recommended to have a Wizard with Bio Blast II. Depending on availability, equip the Zweihander Set to your Knight for Scald Immunity.
• Use Berserker as a backup tank. Depending on wave difficulty, you can even opt to put him in front. Place your Knight at the right-most slot in the backup party so he will immediately switch out if your Berserker dies.
• Bowbat Billy is dangerous, he attacks fast, hits hard, and is pretty tanky at 600HP. He can potentially 1-2 shot anyone in your party. Make sure to use your Wizard or Archer to dispose of him immediately. Have your Cleric with Haste use it on himself once, then proceed to Haste your Wizard or Archer. I'd opt to Haste the Wizard since Billy is not immune to shock.
• Based on my experience, here is the general killing order to go for:
• Bowbat Billy
• Finneas Fault
• Osorio Zapper
• Faust
• Grander Ghost
• Grander Smoker
• Grander Gatekeeper
• Grander Crank
• Thermal Spikey


text:
1. ## Phi function help

The Euler Phi function counts the number of positive integers less than or equal to n, which are relatively prime to n.

Prove that if n is odd, then , and if n is even, then . I don't really know how to begin.

Here's my attempt to prove the first part, if n is odd, .

Let the prime decomposition of n be .

So,

But it seems like this would work for all n, not just odd n, so my above proof must be wrong.

2. Who tells thou that among the prime decomposition the p_i's are different from 2?
Instead decompose n>1 as n=2^m*p1^(a1)*...*pk^ak where m>=0

3. See result 2(b) here

4. Thank you guys for the reply. I think I got it now.

5. recall that $\varphi(ab)=\varphi(a)\varphi(b),$ whenever $\gcd(a,b)=1.$ now if $n$ is odd, then $\gcd(2,n)=1.$ so $\varphi(2n)=\varphi(2)\varphi(n)=\varphi(n).$

if $n$ is even, then $n=2^km,$ for some $m, k \geq 1,$ with $\gcd(2,m)=1.$ therefore: $\varphi(2n)=\varphi(2^{k+1} m)=\varphi(2^{k+1}) \varphi(m)=$

$(2^{k+1} - 2^k)\varphi(m)=2(2^k - 2^{k-1})\varphi(m)=2\varphi(2^k)\varphi(m)=2\varphi(2^k m)=2\varphi(n). \ \ \ \square$

format: plain


text:
165 views

A solution for the differential equation $x’(t) + 2x(t) = \delta(t)$ with initial condition $x(\overline{0}) = 0$

1. $e^{-2t}u(t)$
2. $e^{2t}u(t)$
3. $e^{-t}u(t)$
4. $e^{t}u(t)$

1
241 views


text:
# Why does pstricks have an effect on tikz' draw opacity when used within beamer?

\documentclass{beamer}
%\documentclass{article}

\usepackage{pstricks}

\usepackage{tikz}
\usetikzlibrary{chains}

\begin{document}
\begin{frame}{}
\begin{tikzpicture}[start chain]
\node[on chain] {A};
\node[on chain,join={with chain-1 by {draw opacity=0}}] {B};
\node[on chain,join={with chain-2 by {draw opacity=1}}] {C};
\end{tikzpicture}
\end{frame}
\end{document}

which produces A-B-C. If I comment out \usepackage{pstricks} or use the article document class, then it produces A B-C, the correct result. Why is that and how can I use pstricks together with tikz and beamer in this case?

Edit: I use pdflatex.

-
Which engine do you use to compile your document? – Daniel Jul 1 '13 at 11:17
With latex->dvips->ps2pdf, the result is correct. – Paul Gaborit Jul 1 '13 at 11:18
I use pdflatex. – neo Jul 1 '13 at 11:19
You cannot use pstricks from pdflatex – JLDiaz Jul 1 '13 at 12:08
JLDiaz: Sure, with -shell-escape and \usepackage{auto-pst-pdf}. But my problem also occurs without this, so I didn't include it. – neo Jul 1 '13 at 12:11

run it with xelatex instead of pdflatex. Then you also do not need the package auto-pst-pdf. However, I suppose a problem with beamers opacity settings.
xelatex takes 1min 6s to compile my slides. Then I rather use latex->dvips->ps2pdf which takes 9s. – neo Jul 1 '13 at 12:43


text:
emacs-orgmode
[Top][All Lists]

## Re: [O] org-mode, tikz and beamer

 From: Suvayu Ali Subject: Re: [O] org-mode, tikz and beamer Date: Mon, 25 May 2015 14:16:05 +0200 User-agent: Mutt/1.5.23.1-rc1 (2014-03-12)

Hello Cédric,

First, apologies for the delay.  I am swamped with a lot of things for a
while now, makes my responses rather irregular.

On Thu, May 21, 2015 at 10:33:13PM +0200, cédric ody wrote:
>
> Here is the shell script (many comments are in english except the
> beginning) and the org file I use. To see how I call it, you can have
> a look at the enclosed Makefile. Note that it uses specific
> configurations files as well tex macros so it won't work without these
> files. I can prepare a short example which generates the tex and pdf
> files if needed. The script probably gives for now a good idea. You
> can also look at the enclosed generated tex file to see how the tikz
> language.

I think you forgot the Makefile.  Aside from that, I looked at the
script, and the Org file, albeit not very thoroughly.  My impression is,
it is a really nice effort but I think it's unsustainable.  You have to
duplicate a lot of work, and since you do it in a shell script, you are
limited.  Here are a few particular points:

- You reimplement the Org parser.  This of course means you do not
support a large part of the standard syntax[1].  It's not future proof
either.  For the same reasons, it is very brittle.  Org-element does a
great job of parsing, you should use it.

- You seem to rely on specific cookies, like %%%' (and maybe "abusing"
tags like noexport?).  This is introducing _new_ syntax.  Again, since
this is outside of org-element, there is no way to ensure robustness
and reproducibility.

> Basically, the shell script looks recursively into the org file and
> creates nodes for the tikz headline mindmaps. Thus, there are parent
> nodes and children nodes.
>
> During that excursion, two kinds of files are created: the "tree"
> files and the "contents" files.
>
> The first ones are tex files with tikz mindmaps that must be inserted
> at specific locations at the final latex compilation step. One tree
> file contains the parent node with all the children files.

This part sounds good.

> The "contents" files are org files and are converted into tex files
> via the org-mode export command in a batch way. In the shell script,

This, I'm not completely certain.  If I got this right, you export one
file per beamer frame?  Is that right?  I also see you do a bit of
editing with sed.  Again, I think this makes it too brittle, too many
assumptions about what is present and what is not.

> At the end, the assembly of all these files is done before compiling.
>
> Numbering of sections through the recursive call is important so that
> links work properly as you notice. Links allow one to go back and
> forth the document. To go back, the idea is to click on the headline.
> If a node exists without content, the links sends you the beginning of
> the file or something like that.

This part I'm not sure I quite understand.  Shouldn't normal LaTeX
referencing mechanisms (à la \label and \ref) be able to handle this?

Anyway, after looking at the script I'm convinced this endeavour is
better pursued in lisp.  I think it would help if you draft a document
outlining the Org elements you want to map to which specific tikz
features/commands.  You will then have a list of leftover info that tikz
still needs to achieve the end goal.  At this point others can suggest
how you could communicate these missing info to tikz.  E.g. you already
have one suggestion from Bernhard, but I think it is probably too
generic.  If you manage to pursue this, I think the outcome will be a
new Org backend, possibly derived from ox-latex or ox-beamer.

Please don't be afraid to learn lisp, although it is hard to master,
it's easy to pick up.  I think the list will be more than willing to
help you with that.  Also, I think this is not a easy project.  It will
take some iterations to get to a version that can be test widely (by say
putting in an experimental branch or something).

While proof reading my email, I just realised ox-koma-letter might be a
really nice place for you to get familiar with how to repurpose Org
syntax to translate info to the backend in different ways.  Have a look.

Hope this helps,

Footnotes:

[1] Do not underestimate this aspect, Org users have a way to come up
with interesting ways to use features that were not envisioned
during development!

--
Suvayu

Open source is the future. It sets us free.

`


text:
## FANDOM

10,845 Pages

The primorial, a portmanteau of prime and factorial, is formally defined as

$p_n \# = \prod^{n}_{i = 1} p_i$

where $$p_n$$ is the nth prime.[1]

Another slightly more complex definition, which expands the domain of the function beyond prime numbers, is

$n \# = \prod^{\pi (n)}_{i = 1} p_i$

where $$p_n$$ is the nth prime and $$\pi (n)$$ is the prime counting function.

Using either definition, the primorial of n can be informally defined as "the product of all prime numbers up to n, inclusive." For example, $$16 \# = 2 \cdot 3 \cdot 5 \cdot 7 \cdot 11 \cdot 13 = 30030$$.

The primorial's relationship to the Chebyshev function $$\theta (x)$$ gives it the property

$\lim_{n\rightarrow\infty} \sqrt[p_n]{p_n \#} = e$

where e is the mathematical constant.

### Euclid's theorem Edit

The primorial can be used to prove that there are infinitely many primes (Euclid's theorem). If there was a largest prime $$P$$, then $$P \# + 1$$ would also be prime, which is a contradiction. Outside of the proof by contradiction, $$p \# + 1$$ is not always prime.

1. [1]


text:
# Total Utility

Total utility refers to the overall level of happiness or satisfaction that a consumer experiences by consuming a certain amount of a good or service. While marginal utility measures the change in utility of consuming one additional unit, total utility measures the level of happiness associated with the consumption of a certain quantity of the good.

Utility is an important concept in economics, because neoclassical economic theory is based on the premise that rational individuals maximize their utility. This implies that all (economic) decisions and interactions can be analyzed by studying the utility maximization problem of the people involved. This is usually described by a utility function, i.e., a mathematical function that assigns a value to the level of happiness an individual experiences when consuming a certain bundle of goods and services. This function represents the preferences of a consumer over a set of alternatives.

Commonly, we assume that utility can be measured in monetary units, meaning that it is a cardinal concept for us. The total utility of consuming a good is equivalent to the amount of money that would make the consumer equally as happy to receive as when they consume the good. For example, the level of happiness or satisfaction you obtain from a chocolate bar can be measured by the amount of money that would give you the same level of happiness as consuming the chocolate bar. Cardinal utility means that the number we associate with the utility of the consumption of a good has a meaning and we can use it for comparisons. For example, if the consumption of 1 chocolate bar gives me a total utility of 1 and the consumption of 1 piece of cake gives me a total utility of 2, then we can conclude that not only do I prefer cake to a chocolate bar, but I like cake twice as much as a chocolate bar. An alternate concept would be ordinal utility- see the Further Reading section below for a description.

#### Suggested Opportunities

When studying economics, you cannot get around the term marginal utility, which describes the increase in happiness or well-being from consuming one additional unit. The difference between marginal and total utility is that the first term only measures the change in happiness associated with the last unit that was consumed. The latter term meanwhile refers to the overall level of happiness or well-being derived from consuming a certain quantity. This means that total utility of consuming a certain quantity is equivalent to summing up the marginal utility of all units. Marginal utility can be positive or negative depending on whether consuming one additional unit increases or decreases someone's relative happiness. If the marginal utility of the last unit is positive, then total utility is increasing. If it's negative, total utility is decreasing.

Let us look at an example to better understand the difference. In the table below we can see the total as well as the marginal utility that an individual, let us call her Anne, obtains from consuming a certain number of cups of coffee. Consuming one cup of coffee gives Anne a total utility of 5, and as this is the first cup, it is also the marginal utility of the first cup. So, the marginal utility of the first cup is equal the total utility at one unit consumed.

 Number of cups of coffee 0 1 2 3 4 5 Total utility (measured in monetary units) 0 5 7 8 8 5 Marginal utility 5 2 1 0 -3

Drinking two cups of coffee gives Anne a total utility of 7, so her marginal utility is equal to 2 (the change in total utility from the first to the second cup). In other words, the second cup of coffee still increases Anne’s happiness or wellbeing, although the increase is smaller than from the first cup. For the fourth cup, the marginal utility is equal to zero and we see that the total utility of Anne from the third to the fourth cup does not change. Anne’s total utility of consuming five cups is lower than that of consuming two, three, or four cups, and this means that the marginal utility of the fifth cup is negative, since Anne has had enough coffee and doesn’t want more. This is due to the law of diminishing marginal returns. As mentioned above, the total utility of a certain quantity is equal to the sum of the marginal utilities. For example, the total utility of the second cup is equal to the increase in utility from consuming the first cup (5) plus the increase in utility from consuming the second cup (2), which is equal to 7.


text:
## UOFTBB - Attack of the Bloons

no tags

The Bloons (not to be confused with balloons) are attacking! They are attempting to navigate your course of $L$ ($1 \leq L \leq 1000$) cells, laid out in a row and numbered from $1$ to $L$. You don't know what they'll do to you if they manage reach the end, and you don't want to find out! To that end, you've constructed some defensive towers along the course. You might say that this is a Bloons Tower Defense.

There are $N$ ($1 \leq N \leq 1000$) towers ready to take out any Bloons that get close. The $i$th tower is located next to cell $C_i$ ($1 \leq C_i \leq L$), and can launch darts at any Bloons that are no more than $R_i$ ($0 \leq R_i \leq 1000$) cells away - that is, Bloons in cells $C_i-R_i$ to $C_i+R_i$, inclusive. Every second, it will do $D_i$ ($1 \leq D_i \leq 10^9$) HP worth of damage to any Bloons in this range.

$M$ ($1 \leq M \leq 1000$) Bloons will attempt to float through your course, one after another. The $i$th Bloon begins with $H_i$ ($1 \leq H_i \leq 10^9$) HP, and will pop as soon as it has taken at least that much damage in total. Each Bloon starts in cell 1, and moves along the course at a speed of 1 cell per second. If a Bloon moves past cell $L$, it safely exits the course and can no longer be popped.

There are $T$ ($1 \leq T \leq 20$) scenarios as described above. For each, you'd like to determine how far along the course each of the $M$ Bloons will make it.

### Input

First line: 1 integer, $T$

For each scenario:

First line: 2 integers, $L$ and $N$

Next $N$ lines: 3 integers, $C_i$, $R_i$, and $D_i$, for $i = 1..N$

Next line: 1 integer, $M$

Next $M$ lines: 1 integer, $H_i$, for $i = 1..M$

### Output

For each scenario:

$M$ lines: If the $i$th Bloon will survive the course, the string "Bloon leakage" (without quotes) - otherwise, 1 integer, the furthest cell which the $i$th Bloon will reach, for $i = 1..M$

### Example

Input:
110 33 3 14 0 410 2 24120911

Output:
1Bloon leakage58
Explanation of Sample:

The following diagram illustrates which cells each tower can hit:

The first Bloon, having only 1 HP, will go down to the first tower in cell 1.

The second Bloon will manage to clear the course, surviving past cell 10 with 4 HP remaining.

The third Bloon will lose its final HP while at cell 5, having taken 5 damage from the first tower, and 4 from the second.

The final Bloon will survive past cell 6 with 1 HP remaining, but will then go down at cell 8 when it takes 2 damage from the third tower.


text:
# Why is the scalar QED vertex not inconsistent with angular momentum conservation?

In scalar QED, there is a vertex where two spin $$0$$ particles come in and a spin $$1$$ photon comes out. Naively this can't possibly be consistent with angular momentum conservation, because two spin $$0$$ things can't add up to spin $$1$$.

It is claimed here that this is okay because the photon is "off-shell", so it has spin $$0$$. I don't believe this argument. While it is true that the usual formulation of QED has longitudinal photons, the whole point is that they decouple. And it's perfectly possible to formulate QED with only physical states from the start. Being off-shell is weird, but not so weird that it can reach outside the Hilbert space and produce a new scalar state out of nowhere.

A more sensible possibility, in my opinion, is that the two spin zero particles must have orbital angular momentum $$\ell = 1$$. But that seems rather complicated, and I don't know how to show that.

What is the resolution to this puzzle?

• Are you talking about the vertex, or an impossible scalar-scalar fusion? In 2, why don't you actually write the Lorentz invariant vertex and the Feynman rule and make your Lorentz misgivings explicit? – Cosmas Zachos Jan 1 '18 at 21:30
• @CosmasZachos I'm talking about the vertex with two spin $0$ particles and one spin $1$ particle, as shown here. I know that this vertex by itself is forbidden by momentum conservation, but I would imagine that's independent of the angular momentum part I'm asking about. – knzhou Jan 1 '18 at 21:36
• The coupling is Lorentz (and and its rotation subgroup) invariant and you should be able to see that from it... – Cosmas Zachos Jan 1 '18 at 21:47
• @CosmasZachos I can see that, but I don't know why my other argument is wrong -- how can angular momenta of $0$, $0$, and $1$ add up to $0$? – knzhou Jan 1 '18 at 21:49
• You are only adding intrinsic spins, skipping orbital angular momentum?? If you look at the vertex on the bottom of the 2nd transparency of Steve G's notes you adduced, the gradient translates to a momentum, which is dotted to the photon... Thats both a Lorentz and a rotation scalar. If you wish, the intrinsic angular momentum of the photon is matched by the orbital angular momentum of that vertex/combination. – Cosmas Zachos Jan 1 '18 at 21:54

Indeed, the two spin $0$ particles must have angular momentum $\ell = 1$. The crucial feature is that, unlike the case of regular QED, the scalar QED interaction $\mathcal{H}_{\text{int}} \sim A_\mu \phi \partial^\mu \phi$ contains a derivative, so it is proportional to the momentum $p^\mu$.
Then a first-order transition amplitude from scalar and photon states $|i \rangle, |i' \rangle$ to $|f \rangle, |f' \rangle$ is $$\langle f, f' | \mathcal{H}_{\text{int}} | i, i' \rangle \sim \langle f | p^\mu \phi_{\mathbf{p}} \phi_{\mathbf{0}} | i \rangle \, \langle f'| A_\mu | i' \rangle.$$ Focusing on the first term here, by the Wigner-Eckart theorem, the total angular momentum of the final state is the sum of the angular momentum of the initial state and that of the transition operator. Since the $\phi$ fields and $\phi$ particles are scalars, and the vector $p^\mu$ carries spin $1$, that means one unit of angular momentum is transferred to the orbital angular momentum of the $\phi$ particles, for each scalar QED vertex.
• Why does the vector $p^\mu$ carry spin 1? The longitudinal part of a gauge field is precisely the spin zero part, so I'd expect $p^\mu$ to carry spin zero. (Recall that the vector representation of the Lorentz group, when restricted to spatial rotations, coincides with the $0\oplus1$ representation of the Orthogonal group. In other words, a Lorentz vector contains both a spin zero and a spin 1 part). – AccidentalFourierTransform May 29 '18 at 20:36
• @AccidentalFourierTransform By your second sentence, are you saying that $p^\mu A_\mu$ has spin $0$? I would agree with that, and propose that the individual parts $p^\mu$ and $A_\mu$ that matter for this process each carry spin $1$. For example, we can work in temporal gauge, where $A_0 = 0$, so only the spin $1$ part of each survives. Since orbital angular momentum is gauge invariant this reasoning should hold for all gauges. (Of course, tell me if I'm misinterpreting something you're saying!) – knzhou May 29 '18 at 20:51
• No, I'm saying that $A_\mu=A_\mu^T+\partial_\mu\phi$. The first term is the spin 1 part, and the second part is the spin zero part. In terms of polarisation vectors, $\epsilon_\mu=\epsilon_\mu^T+p_\mu$. The momentum $p_\mu$ represents the spin zero part of a vector. More generally, a gradient cannot create spin 1 particles: $\langle 0|\partial_\mu\phi|\boldsymbol p\rangle=p_\mu\langle0|\phi|\boldsymbol p\rangle=0$, with $|\boldsymbol p\rangle$ a spin 1 particle. – AccidentalFourierTransform May 29 '18 at 21:03
• @AccidentalFourierTransform Now I'm confused, I think we're saying the same thing. We agree $A_\mu, p_\mu \in 0 + 1$, and we agree $p_\mu A^\mu \in 0$. What I think your decomposition says is that in the product $p_\mu A^\mu$, which could potentially consist of $(0 + 1) \times (0 +1)$, the only piece that contributes is the $1 \times 1$, from which we get the $0$. And that's what I said in my comment. Note that in my answer, $p_\mu$ is not referring to the longitudinal polarization of $A_\mu$. It means the $p_\mu$ in the product $p_\mu A^\mu$. – knzhou May 29 '18 at 21:20
• I agree that $A_\mu\in 0\oplus 1$, and that $p_\mu A^\mu\in 0$. But I disagree that $p_\mu\in0\oplus1$. Rather, $p_\mu\in0$. The spin 1 rep. is orthogonal to the spin 0 rep., and therefore $p_\mu$ picks up only the spin 0 part of $A_\mu$. If $p_\mu$ had spin 1, it would add to the spin 1 part of $A_\mu$, and we would have $p_\mu A^\mu\in 0\oplus 1\oplus2$, which is clearly false. Thus, my initial comment: $p_\mu$ has spin zero, not spin one. – AccidentalFourierTransform May 29 '18 at 21:31


text:
# Proper Proposers and Skipped Slots: A Ranking and Segmentation Study of Validator Behavior

The release of Ethereum 2.0 will mark the beginning of the largest scale proof-of-work to proof-of-stake migration in the crypto-ecosystem. This transformation will render traditional mining infrastructure outmoded as network security and consensus is facilitated, no longer by miners, but holders of the cryptocurrency who stake a portion of their balances inside of wallets integrated into client node software that interact directly with the blockchain. These stakers will serve as validators, entities economically incentivized to propose and attest to the proper creation of blocks on the network. Prior analysis into the game theory of staking hypothesize that the pool of stakers on the Ethereum 2.0 network will be diverse, representing a heterogeneous mix of institutions participating as validators all seeking to optimize their respective objectives. These may include exchanges seeking to leverage excess reserves, staking pools interested in increasing participation by incentivizing shared validator ownership, hobbyists interested in tinkering with the latest technology amongst a host of other entities. The prevailing hypothesis is that, as validators actively fulfill their duties, these network participants will have similar, yet discernible patterns in behavior and performance that will hold insights into the health of both the individual validators and the network as a whole. It is the goal of this analysis to establish a foundation for this understanding by examining and visualizing validator behavior using publicly available data from the Ethereum 2.0 Medalla testnet.

## Definitions, Data and the Analysis Environment

To participate as a validator, Ethereum 1.0 holders will transfer 32 ETH into a deposit contract that creates an equivalent 32 bETH credit on Ethereum 2.0’s Beacon Chain. This places the validator into an activation queue. Before blockchain activation there is an eligibility period where the queued validator must wait until the first epoch it is eligible to be active. At any point after the eligibility epoch has passed, the validator may complete the setup of the beacon chain client and join the network. Once online, the validator’s activation epoch is logged and it may begin being assigned to propose blocks or participate in block attestations. For the validators who can no longer commit to their responsibilities, after a set duration of time, it is possible to exit the network. Beacon clients that exit have a time stamp logged of the epoch their client was disabled and when their funds are withdrawn. These validators have said to have completed their “journey”, and for individual validators on the Medalla testnet, their journeys have been fully captured and characterized by the Beacon Scan block explorer, the source of the data utilized in this study. From the Genesis epoch until epoch 15082, our analysis tracked the behavior of 80,392 validators as they were assigned to slots, proposed blocks and participated in attestations for other block proposals.

The 11 variables provided from the Beacon Chain block explorer are:

• X1 – The row index of the validator.
• publickey – The public key identifying the validator.
• index – The index number of the validator.
• currentBalance – The current balance, in ETH, of the validator.
• effectiveBalance – The effective balance, in ETH, of the validator.
• proposed – The number of blocks assigned, executed, and skipped by the validator.
• eligibilityEpoch – The epoch number that the validator became eligible.
• activationEpoch – The epoch number that the validator activated.
• exitEpoch – The epoch number that the validator exited.
• withEpoch – Epoch when the validator is eligible to withdraw their funds. This field is not applicable if the validator has not exited.
• slashed – Whether the given validator has been slashed.

A sample of the raw data is shown below within the R analysis environment, the one leveraged to conduct this study.

See Code
library(knitr)
library(tidyverse)
library(stringi)
library(ggfortify)
library(ggnewscale)
library(skimr)

sample_n(valid_raw %>% as.data.frame, 5)

To be suitable for analysis, this data required some minor data manipulation of its fields. This included the conversion of text columns to ASCII, the parsing and coercion of the current and effective balance columns into numeric variables, and the separation of the proposed column into three distinct fields for blocks assigned, executed, and skipped. Our analysis of validator behavior will take a top down approach where we will first focus on insights gathered at the network level before examining the behavior of individual nodes. With this at the forefront, we can produce our first analysis, a simple summary table of the centrality and spread statistics of our collected features.

 Name valid Number of rows 80392 Number of columns 12 _______________________ Column type frequency: character 5 logical 1 numeric 6 ________________________ Group variables None

Variable type: character

skim_variable n_missing complete_rate min max empty n_unique whitespace
publickey 0 1 20 20 0 80392 0
eligibilityEpoch 0 1 2 7 0 540 0
activationEpoch 0 1 2 7 0 15078 0
exitEpoch 0 1 1 5 0 1718 0
withEpoch 0 1 2 5 0 812 0

Variable type: logical

skim_variable n_missing complete_rate mean count
slashed 0 1 0.07 FAL: 75051, TRU: 5341

Variable type: numeric

skim_variable n_missing complete_rate mean sd p0 p25 p50 p75 p100 hist
index 0 1 40196.27 23207.62 0 20098.75 40196.50 60294.25 80392.00 ▇▇▇▇▇
currentBalance 0 1 31.79 6.22 1 31.59 32.02 32.19 288.17 ▇▁▁▁▁
effectiveBalance 0 1 30.76 3.07 1 31.00 32.00 32.00 32.00 ▁▁▁▁▇
assigned 0 1 6.09 4.84 0 2.00 5.00 10.00 31.00 ▇▃▂▁▁
executed 0 1 4.42 4.10 0 1.00 3.00 7.00 25.00 ▇▃▁▁▁
skipped 0 1 1.67 2.92 0 0.00 0.00 2.00 31.00 ▇▁▁▁▁

## Validator Behavior at the Network-level

Activation is the first step towards compliance for any node attempting to join the active validator set. By looking at the number of activated validators, as a function of the activation epoch, we observe that around 20,000 validators were activated during the genesis block and there has been a near constant growth rate of 4 validators per epoch since.

A close inspection of the graph reveals two visible anomalies; one between Epoch 3238 and 3440, and the other, between 14189 and 14311. In both instances no new validators were activated on the blockchain for over 150 epochs which suggests there was some fault in the network’s activation functionality. In the following figures we attempt to characterize the failure.

The figure above shows the “Pending Count”, the tracker of the validator queue decreasing towards zero as the “Active Count” inches up towards 32,887 active validators at which, at Epoch 3238 the entire queue has been activated. Subsequent epochs had no change in pending counts, active counts nor the total validator counts until Epoch 3294 when new validators began to appear in the queue.

Though validators appeared in the activation queue, they were not being activated as seen in the figure directly below. The breakdown of the activation functionality on the network can be clearly seen as the “Pending Count” queue is fixed at 1,700 between epochs 3350 and 3351. From the original graph of activations we know that functionality was restored near the 3440th epoch. This macro analysis into node activations should highlight, with critical importance, the point that any attempts to characterize validator behavior must account for exogenous blockchain influences that may inhibit a node’s ability to perform its network duties. Network failures, bugs in client software, or ambiguous configuration documentation are all factors influential to a validator’s performance, but are well outside of their locus of control.

For validators attempting to leave the network, there is a mandatory lock-in period that is enforced. It is only after this time frame is a staker allowed to withdraw their funds and leave the network. This process is a two step procedure where the node client software is first shut down and the bETH is withdrawn from the network. Specifically for the 6304 validators that have exited, we observed the distribution of the time to exit to be about 362 hours or around 15.1 days.

See Code
# Get the distribution of time to exit for validators
valid %>%
mutate(activationEpoch = as.numeric(ifelse(activationEpoch == "genesis", 0, activationEpoch)),
exitEpoch = as.numeric(ifelse(exitEpoch == "genesis", 0, exitEpoch)),
timeToExit = 6.4 / 60 * (exitEpoch - activationEpoch)) %>%
arrange(timeToExit) %>%
ggplot(aes(x = timeToExit)) +
geom_histogram(fill = "#EA5600", colour = "grey60") +
scale_x_continuous(breaks = seq(0, 1500, by = 100)) +
labs(
title = "Distribution of Time to Exit for Validators",
x = "Time to Exit (Hours)"
)

We can better observe these trends over time with both a traditional time series plot and a cumulative count graph that tracks the number of validators exiting throughout the epochs. Again, we see an interesting trend where a large number of nodes exited the network between the 3000th and 4000th epochs. Later we’ll correlate this macro-network wide finding with specific behaviors exhibited by the individual validators.

See Code
exits <- valid %>%
mutate(exitEpoch = factor(exitEpoch, levels = 0:max(as.numeric(exitEpoch), na.rm = TRUE))) %>%
group_by(exitEpoch, .drop = FALSE) %>%
summarise(count = n()) %>%
filter(exitEpoch != "--") %>%
mutate(exitEpoch = as.numeric(exitEpoch)) %>%
arrange(exitEpoch) %>%
mutate(count_cume = cumsum(count))

ggplot(data = exits, aes(x = exitEpoch, y = count)) +
geom_line() +
scale_x_continuous(breaks = scales::pretty_breaks(n = 10)) +
labs(
title = "Exiting Validators by Epoch",
x = "Exit Epoch",
y = "Count"
)

ggplot(data = exits, aes(x = exitEpoch, y = count_cume)) +
geom_line() +
scale_x_continuous(breaks = scales::pretty_breaks(n = 10)) +
scale_y_continuous(breaks = scales::pretty_breaks(n = 10)) +
labs(
title = "Cumulative Exiting Validators by Epoch",
x = "Exit Epoch",
y = "Count"
)

To initiate our investigation into the block proposal process, we plotted the distribution of the number of blocks assigned, successfully executed, and skipped across all validators in the dataset. It is immediately obvious that there are a substantial portion of validators that have executed no assignments, while in the most extreme counter cases, some have executed over a dozen.

See Code
# Get the distributions of assigned, executed, and skipped.
valid %>%
select(assigned, executed, skipped) %>%
gather(key = variable, value = value) %>%
group_by(variable, value) %>%
summarise(count = n()) %>%
ggplot(aes(x = value, y = count, fill = variable)) +
geom_bar(stat = "identity") +
scale_fill_brewer(palette = "Dark2") +
scale_x_continuous(breaks = seq(0, 35)) +
scale_y_continuous(breaks = scales::pretty_breaks(n = 10)) +
facet_wrap(~variable, nrow = 3) +
labs(
title = "Distribution of Assigned, Executed, and Skipped Blocks"
) +
theme(legend.position = "off")

From the barcharts above, we observe that each validator status is distributed exponentially where most nodes have not had any assignments, executed blocks or skipped assignments. Globally however, the average validator has been assigned to 6 slots, has successfully proposed 4 blocks and has missed 2 slot assignments. By treating the executions and assignments skipped as proportions, we can visualize the distributions of both execution success and skipped slot as rates. To do so we define each variable by taking the number of executed or skipped blocks, and dividing them by the total number of assigned blocks.

See Code
# Get the execution rate distribution
valid %>%
mutate(Execution Rate = executed / assigned) %>%
ggplot(aes(x = Execution Rate)) +
geom_histogram(fill = "#EA5600") +
scale_y_continuous(labels = scales::comma, breaks = seq(0, 35000, by = 5000)) +
scale_x_continuous(labels = function(.) scales::percent(., accuracy = 1), breaks = seq(0, 1, by = .1)) +
labs(
title = "Distribution of Execution Rate for Validators"
)

# Get the skipped rate distribution
valid %>%
mutate(Skipped Rate = skipped / assigned) %>%
ggplot(aes(x = Skipped Rate)) +
geom_histogram(fill = "#776DB8") +
scale_y_continuous(labels = scales::comma, breaks = seq(0, 35000, by = 5000)) +
scale_x_continuous(labels = function(.) scales::percent(., accuracy = 1), breaks = seq(0, 1, by = .1)) +
labs(
title = "Distribution of Skipped Rate for Validators"
)

Surprisingly, the rate of successful block executions and the proportion of skipped slots appear to follow reflected Beta distributions where most of the probability mass rests at the edges of the support range. Most nodes have had only success executing on their block proposals; however a significant portion of the validators have not had any success. Likewise, most validators have not skipped any slot assignments, but a substantial portion of them have skipped all of their block proposals. This result suggests that there will likely be a clear demarcation between the behaviors of certain validators on the network.

Slashing on the Ethereum 2.0 network is the act of punishing validators for violations of the consensus rules by either improperly proposing a block or failing to properly attest to a block while in an assigned committee. To better understand the slashing behavior within our dataset, we investigated the number of slashed validators over time. From the graph below, we notice that between epochs 2000 and 4000, the slashed validators rose from 0 to 5000. Since epoch 4000, the growth has been much slower, barely creeping up towards 5500 through epoch 15000. The spike in slashings during epochs 2000 and 4000 correspond directly with the large exodus of validators that we observed previously. When punished with a slashing, a portion of the validators stake is removed. If the effective balance of the validator drops too low, it could be subject to removal from the network. To learn more about slashings on the Medalla testnet, refer to our article here.

See Code
# Get the number of slashed validators over time
valid %>%
mutate(exitEpoch = as.numeric(ifelse(exitEpoch == "genesis", 0, exitEpoch))) %>%
group_by(exitEpoch) %>%
summarise(slashed = sum(slashed)) %>%
ungroup() %>%
mutate(cume_slashed = cumsum(slashed)) %>%
ggplot(aes(x = exitEpoch, y = cume_slashed)) +
geom_line() +
scale_y_continuous(breaks = scales::pretty_breaks(n = 10)) +
scale_x_continuous(breaks = scales::pretty_breaks(n = 10)) +
labs(
title = "Number of Slashed Validators over Time",
x = "Exit Epoch",
y = "Cumulative Number of Slashed Validators"
)

From our macro analysis, we’ve shown that analytical techniques applied to Medalla’s testnet data can help us develop a foundational understanding of the network. Our tracking of validator activations, execution rates, and exit patterns, among other metrics, cast the first form a picture of network health as a whole that we can then recast and project onto individual validators. Our next section will further develop this idea as we focus specifically on understanding the actions of Ethereum 2.0’s stakers.

## Behavioral based Validator Rankings

It is our goal at this junction to develop a categorization method that can codify patterns in validator behavior, characterize them and, lastly, provide a metric to discern the difference between constructive and destructive network actions. To facilitate the discovery of these behavioral patterns, and fulfill the aforementioned objectives, we will employ a weighted linear rank scoring algorithm. This simple, yet powerful sorting technique creates a mapping from a validator’s characteristic vector onto a scalar ranked score that can then be used for ordered comparisons between nodes. As inputs into the scoring function, we’ll use the current balance, number of successful executions, the active status of the validator, how long the node has been active, the number of skipped assignments and a binary indicator for whether the node has been slashed. For linear scoring functions to operate properly, the effect of each variable on performance must be well understood and parameterized as polarities. In this application, the polarities of each of our variables are unambiguous. Of the six, the only variables that directly indicate negative behavior are the number of skipped slots and whether the validator has been slashed. To account for this, we will set negative weightings on those two variables and allow the others to maintain their positive polarity.

See Code
# Compute statistics for every validator
valid_stats <- valid %>%
mutate(activationEpoch = as.numeric(ifelse(activationEpoch == "genesis", 0, activationEpoch)),
active = (exitEpoch == "--"),
exitEpoch = as.numeric(ifelse(exitEpoch == "genesis", 0, ifelse(exitEpoch == "--", 15579, exitEpoch))),
active_time = 6.2 / 60 * (exitEpoch - activationEpoch),
slashed = !slashed) %>%
mutate(executions = executed) %>%
mutate(skips = -1 * skipped) %>%
select(publickey, index, currentBalance, executions, skips, slashed, active, active_time)

# Using the statistics, produce a ranking of each validator
valid_ranks <- valid_stats %>%
mutate(across(c(currentBalance, executions, skips, slashed, active, active_time), rank, na.last = FALSE)) %>%
mutate(active_time = active_time / 4) %>% # Deweighting
gather(key = Variable, value = Rank, 2:ncol(.)) %>%
group_by(publickey) %>%
summarise(Score = sum(Rank)) %>%
mutate(Rank = rank(-1 * Score)) %>%
arrange(Rank)

# Join back to the original statistics
valid_all <- valid_stats %>% left_join(valid_ranks) %>%
mutate(slashed = !slashed, skips = -1 * skips) %>%
arrange(Rank)

Here we will formalize our weighted linear rank scoring function. Let’s first define our set of independent behavioral metrics:

$x_1 =$ currentBalance
$x_2 =$ executions
$x_3 =$ skips
$x_4 =$ slashed
$x_5 =$ active
$x_6 =$ active_time

For any specific validator, the ordered rankings of its values on any variable, $x_i$, can be represented as $r_i$. We use weights, $w_i$, to correspond to emphasis placed on variable $x_i$ in the scoring function $S$.

The weight vector shall satisfy the following constraint: $w_1+w_2+w_3+…+w_6 = 1$.

The score, $S$, is then computed as the scalar product of the ranks and weights.

$$S =\sum_{i=1}^6 w_ir_i$$

Once implemented, performance scores were calculated for all 80,392 validators leveraging each of our behavioral metrics. Our most immediate objective is to visualize the scores to assess how effective they are at differentiating network actors. We begin first with a sorted dot plot, colored by gradients, to help highlight the differences in scores and the rate of change in ranked values.

See Code
# Sort them and display in index order
ggplot(valid_all %>% arrange(Score) %>% mutate(Index = 1:nrow(.)), aes(x = Index, y = Score, colour = Score)) +
geom_point() +
scale_colour_gradientn(colours = rainbow(2), labels = scales::comma) +
scale_x_continuous(name="Index",labels = scales::comma, breaks = scales::pretty_breaks(n = 10)) +
scale_y_continuous(labels = scales::comma, breaks = scales::pretty_breaks(n = 10),
limits = c(0, 350000)) +
labs(
title = "Sorted Validator Scores"
)

While this validator score curve does show there is differentiation between the values, it fails to give any clear indication of heterogeneity within the node’s behaviors. The graph does hint at this differentiation near its edges, particularly at the lower portion of scores where the steepness of the curve suggests there is a rather diverse set of scores among a small set of poor performing validators. This result may be intuitive, but it is difficult to ascertain from this graph. A more appropriate visualization would be to plot the distribution of scores as a histogram. We do so below.

See Code
# Check the distribution of scores
n_bins <- length(ggplot2:::bin_breaks_width(range(valid_all$Score), width = 10000)$breaks) - 1L

ggplot(valid_all, aes(x = Score, fill = Score)) +
geom_histogram(show.legend=FALSE,  binwidth=10000, colour = "grey60") +
scale_x_continuous(labels = scales::comma)+
labs(
title = "Distribution of Validator Performance Scores"
)

The multi-modal property of this histogram suggests there are several clusters of nodes co-existing within the same population. This is the first encouraging sign that our scoring function has successfully captured and encoded a meaningful portion of the variance in validator behavior.

As with many unsupervised tasks, the transition from scores to a finite segmentation is often tricky, particularly when there is no well established subject matter context for the selection of cut-offs, nor one agreed upon cluster validation method in the literature to appeal to. With a mixture of investigation, intuition and mathematical hand waving, we settled on the selection of seven score tiers to differentiate network behavior.

See Code
# Get a matrix of the valid data
mat_full <- valid_all %>% select(-Score, -Rank, -publickey, -index) %>% mutate(across(everything(), as.numeric)) %>% as.matrix

# Create tiers of validators
valid_tiers <- valid_all %>%
mutate(Tier = ifelse(Rank <= 2489, 1, ifelse(Rank <= 6942, 2, ifelse(Rank <= 38396, 3, ifelse(Rank <= 56534, 4, ifelse(Rank <= 67877, 5, ifelse(Rank <= 75644,6,7)))))))

# Write out the validator ranking data as a CSV
#write_csv(valid_tiers, "validator_tiers.csv")

# Create a validator summary table
valid_summary <- valid_tiers %>%
select(currentBalance, executions, skips, slashed, active, active_time, Score, publickey, Tier) %>%
gather(key = Variable, value = Value, 1:(ncol(.) - 2)) %>%
group_by(Tier, Variable) %>%
summarise(Value = mean(Value),
Count = length(unique(publickey))) %>%
spread(key = Variable, value = Value)

{r}
# Plot the tier cutoffs with the validator scores
valid_summary2 <- valid_summary %>%
ungroup() %>%
select(Tier, Score) %>%
rbind(c(Tier = 8, Score = -Inf)) %>%

# Plot the tier cutoffs with the validator scores
ggplot(valid_all %>% arrange(Score) %>% mutate(Index = 1:nrow(.)), aes(x = Index, y = Score)) +
geom_point() +
scale_colour_gradientn(colours = rainbow(8), labels = scales::comma) +
new_scale_color() +
geom_rect(data = valid_summary2, inherit.aes = FALSE, aes(xmin = -Inf, xmax = Inf, ymin = Score, ymax = HighScore, fill = factor(Tier)), alpha = 0.2, show.legend = FALSE) +
scale_fill_manual(values = rev(rainbow(8))) +
scale_x_continuous(labels = scales::comma, breaks = scales::pretty_breaks(n = 10)) +
scale_y_continuous(labels = scales::comma, breaks = scales::pretty_breaks(n = 10),
limits = c(0, 400000)) +
labs(
title = "Sorted Validator Scores",
subtitle = "With tier-cutoffs illustrated"
)

With these cut-off ranges, we can apply them to our histogram of scores to create a stacked distribution and then reapply those same rules to partition the histogram along its tiers.

See Code
# Check the distribution of scores with tiers
ggplot(valid_tiers, aes(x = Score, fill = factor(Tier))) +
geom_histogram(colour = "grey60") +
scale_x_continuous(labels = scales::comma) +
scale_fill_manual("Tier", values = rev(rainbow(7)))+
labs(
title = "Distribution of Validator Performance Scores Stacked by Tier"
)
# Check the distribution of scores with tiers
ggplot(valid_tiers, aes(x = Score, fill = factor(Tier))) +
geom_histogram(colour = "grey60") +
scale_x_continuous(labels = scales::comma) +
scale_fill_manual("Tier", values = rev(rainbow(7)))+
labs(
title = "Distribution of Validator Performance Scores Partitioned by Tier"
)+ facet_wrap(vars(Tier))

After partitioning along the scoring thresholds, we established seven distinct scoring tiers. An investigation into validator performance can now begin on the tier level as a we compare how they each interact with the network. To categorize the behaviors of the tiers succinctly, we've listed the mean vectors for each in the table below. Globally, we see a clear monotonic relationship between higher score values and increasingly positive validator behavior. At the tier level, the highest scoring groups have more active validators, have not been slashed, haven't skipped a slot assignment, have maintained a consistent uptime and have bETH balances larger than 32, suggesting that they've been reaping the benefits of their good behavior.

We will now, in plain English, describe the characteristic behaviors of each tier as a group and provide insight into the individual validators that comprise each.

Tier 1 (Ranks 1-2489): Validators in this set can consider themselves “Proper Proposers” since they are the only nodes on the network with a perfect track record of no skipped slots and no slashings. They often have the highest number of successful blocks to go along with their longer than average active time on the network. Only 3% of validators can claim membership in this tier.

Tier 2 (Ranks 2490 – 6942): Second tier validators are successful in their own right, having consistently executed their duties on behalf of the network, though with a slightly lower number of successful blocks. Only a small number have tallied their first skipped slot assignment. Overall, this group exhibits healthy behavior and represents about 6% of the validator population.

Tier 3 (Ranks 6943 – 38396): While validators in this tier are still healthy overall, they do have more skipped blocks and slightly fewer successful block proposals. This group has a lower average active time than Tiers 1 and 2. It is in this cluster we observe the first set of inactive validators. Most of the validators on the network fall in this group, suggesting that its members exhibit the most typical validator behavior and perform average, at best.

Tier 4 (Ranks 38397 – 56534): This is the tier where the prevalence of validators with more serious performance issues begins to rise. The majority of actors are active and have not been slashed, though there are some. This tier is unique because it also houses many of the newer validation nodes who are trying to move up the ranks, many of which have not even had their first assignment.

Tier 5 (Ranks 56535– 67877): - Tier 5 is the first of the truly unhealthy groups where the the ratio of skipped blocks to successful proposals is skewed negatively towards missed assignments. In this tier, more validators have experienced a slashing and the number of inactive nodes continues to increase. 14% of the validators on the network exhibit these behaviors.

Tier 6 (Ranks 67878 – 75644): Validators in this tier are arguably the most toxic, having skipped more block assignments than they have successfully proposed, yet have managed to be on and stay on the network for the longest period of time. These nodes are constantly in danger of being removed from the network due for carrying balances below the 32 ETH threshold. There are a significant number of validators that have been slashed that reside in this group as well. This block represents roughly 10% of the network and consists of either improperly configure nodes or bad actors that consistently skip blocks.

Tier 7 (Ranks 75645 – 80392): The vast majority of validators in this bottom tier are inactive and have had their proposals slashed at least once. There are also a few that left due to an insufficient balance as a result of a disproportionate number of skipped blocks. This group has the lowest current balance and account for 6% of the network.

See Code
x <- prcomp(mat_full)$x %>% as_tibble() %>% mutate(Rank = valid_all$Rank,
Score = valid_all\$Score)

valid_tiers %>%
mutate(Row = 1:nrow(.),
Index = index) %>%
mutate(Label = ifelse(Row %in% c( 80357, 78634, 21108, 62163, 71158, 15372, 4979, 304, 16418, 65418, 74210, 50116,39220), Index, NA)) %>%
select(Label, Index, Tier) %>%
cbind(x) %>%
ggplot(aes(x = PC3, y = PC1, colour = factor(Tier), label = Index)) +
geom_density_2d() +
geom_label(aes(label = Label), show.legend = FALSE) +
scale_colour_manual("Tier", values = rev(rainbow(7)))+
labs(
title = "Validator Performance Score Surface",
subtitle = "colored by tier assignment"
)

Our tiers all possess distinct behavioral characteristics useful for discriminating between them; however, there is also a deeper level of heterogeneity that exists within the tiers themselves.  This result can be found by applying a dimension reduction technique and plotting the component scores against one another as done above.  When labeled by tier, we get one such representation of the score "surface".  Across the landscape, the scores within most tiers coalesce around one another, forming  localized regions.  Though this is true for some groups, Tiers 4 through 7 all have multiple regions where validator scores rest. This is an indication that there is further behavior to be distinguished between the nodes within the same segment.  Unfortunately, with over 80,000 nodes to analyze, we were unable to investigate them all.  However, we were able to highlight some validators within the data that possess representative characteristics and behaviors native to each localized regions.  These validators, their statistics, and indices are given in the table below.

We end this analysis with an invitation to explore these validators on the BeaconScan block explorer directly. There you'll be able to retrieve statistics not currently included in our scoring, as well as, view the most recent snapshot of these nodes' behavior on the network. Will our "Proper Proposer" stay a saint or live long enough to become a Tier 6 villain. Only time will tell.

## Conclusion

Our key takeaway from this analysis is that, when performing our ranking procedure across the nearly dozen of variables and over 80,000 validators, true "tiers" of validators do in fact exist. At the top of the list, Tier 1 validators execute 100% of their assignments, maintain a high effective balance, have not been slashed and have been active from very early on. On the bottom end are validators who were slashed, and failed to execute their assignments. Distributionally, as expected, most validators fall somewhere in between these two extremes. It will be quite interesting to see how the scores that make up the backbone of the tier-based ranking system evolve as time goes on.

Among other interesting findings, we found:

• Nearly every epoch, 4 validators are activated, except for two periods between Epoch 3238 and 3440, and the other, between 14189 and 14311
• A large spike in exiting validators was observed between the 3000th and 4000th epoch.
• The aforementioned spike corresponds to a large increase in the number of slashed validators.
• The average validator has been assigned 6 slots.
• The distribution of the execution and skipped rate follows flipped beta distributions.

With only a couple months of data, we expect that these findings will continue to evolve, and as such, the tiers defining relative performance of validators will continue to need adjustment over time.


text:
# Tag Info

17

In short: You must authenticate the IV. Which particular attacks apply if you don't depends on the block cipher mode; I will give two common examples. In CTR mode, an attacker who fiddles with the IV can forge authenticated messages, but the content of the corresponding plaintext is beyond his control (since he doesn't know the key). Depending on the ...

9

Both an AES-128 key (as defined by FIPS 197), and a TDES Keying Option 2 key (as defined by FIPS SP-800-67) are 128-bit bitstrings. Similarly, both an AES-192 key and a TDES Keying Option 1 key are 192-bit bitstrings. The differences are: In AES, all bits of a key matter to the result; in TDES, 1 bit out of 8 (the lower-order bit of each byte in ...

5

First, it's not said that AES is unbreakable, merely that none of the currently known attacks reduce the computational cost to a point where it's feasible. The current best attack on AES-128 takes 2^126.1 operations, if we had a computer (or cluster) several million times more efficient than any current computer and could operate at the thermodynamic ...

4

Your fault attack scenario correspond to this paper : A Differential Attack Technique Against SPN Structures with Application to AES and KHAZAD (Piret & Quisquater - CHES 2003) This paper describe how to retrieve four bytes of the last round key with at least two pairs of ciphertext/faultytext. Each pair of ciphertext $C$ and faultytext $C^*$ could be ...

4

The Encrypt then MAC is done in general in order to be sure to decrypt into the correct plaintext, without risking of parsing a non-authentic plaintext message. If you don't MAC the IV, then Mallory (attacker that can tamper with messages as a man-in-the-middle) can modify the IV and your MAC will be still validated as good. So you will decrypt into an ...

2

There are some differences between the keys of AES and 3DES. However I do think that your colleagues are more interested in the security of the primitive itself. The AES block cipher is rather more secure than triple DES. If a 128 bit triple DES key is created the amount of effective key bits - the bits actually used in the protocol - is 112 bits. This is ...

2

None of Twofish, Serpent and AES are currently known as broken, so as far as security is concerned, you can use any of them. AES has a slight advantage because it's very widely used, so if it gets broken you're more likely to hear about it and get relevant software updates quickly. The Snowden postings haven't changed much as far as cryptography usage is ...

2

No, that's not really possible without blatant flaws of the implementation. Modern modes of operation of ciphers are resistent to attacks even if you know many pairs of plaintext and ciphertext - and the IV is public knowledge. Knowing it is the normal case. You also didn't mention what operation mode was used. Well, of course you could brute force the key, ...

2

Welcome to crypto SE. I guess, you are referring to the mix columns operation from the point of view with polynomials over $GF(2^8)$. A detailed explanation of this can be found at Wikipedia. It is a quite unusual structure, but it behaves just like you would consider any $GF$. The columns are first considered as polynomial, or better: as coefficients ...

2

Yes, there are modes of operation that achieve the property that you are describing. For example, the Propagating Cipher Block Chaining (PCBC) mode of operation: This mode is similar to CBC but the output for each block is propagated to the input of the next one, so a small error will propagate indefinitely, both for encryption and decryption. There may ...

2

Based on your description, you will not be able to recover the original encrypted file. Since you specify that you used a password and do not indicate the use of an IV, my assumption is that you did, in fact, use a passphrase rather than a secret key. When you encrypt a file with a passphrase, OpenSSL assumes that it is a low-entropy string unsuitable for ...

1

The standard approach is to have the sender pick his nonce (either randomly, or as a counter), and send it with the packet. The decryptor then knows what nonce to use to decrypt, because it's right there. Because nonces aren't assumed to be secret, this works.

1

AES is asymmetrical in this regard. It is down to the key schedule, which generates a sequence of round keys from an initial key. In a modern desktop environment, the round key sequence is simply generated before encryption/decryption starts, so the difference in speed is minimal. In a memory-constrained environment like a smartcard, this may not be ...

1

Take a look at this article it explains the IV can be publicly known once you have encrypted your data. Is using (and storing) a different iv for each file sufficient? (Am I correct in thinking that I'd need to store the iv with the encrypted data?) Yes, as a matter of fact i would not recommend using an IV twice, just for safety. Is this safe? ...

1

Initialization Key hash function hashstring Configuration: E is Rijndael with a block size and key size of 256 bits Input: keystring Output: hash The keystring is padded up with bytes valued zero and split up in blocks of 256 bits $S_0$ to $S_n$; The key blocks $K_0$ to $K_n$ are generated, where $K_0$ consist of $S_0$. The following blocks - if any, ...

Only top voted, non community-wiki answers of a minimum length are eligible


text:
# B Induced current by moving bar magnet external to solenoid.

#### Coolamebe

Hi, I was wondering whether a bar magnet would induce a current if it was moving external to the solenoid, rather than within the coil. I see no reason why it wouldn't occur, but I've never seen it displayed or mentioned so I'm not sure. Thank you.

Related Other Physics Topics News on Phys.org

Homework Helper
Gold Member
2018 Award
The external magnetic field from a long bar magnet loops around from the + pole end to the - pole end, and falls off in strength as one moves away from the ends. Thereby if you move a long bar magnet towards a solenoid, there will be an EMF $\varepsilon=-\frac{d \Phi}{dt}$. With known magnetic field strength and pattern, it would be possible to accurately compute the EMF that occurs for the motion of the magnet towards the solenoid at a given speed. An experiment like this could make for a good science project and/or undergraduate laboratory exercise.

"Induced current by moving bar magnet external to solenoid."

### Physics Forums Values

We Value Quality
• Topics based on mainstream science
• Proper English grammar and spelling
We Value Civility
• Positive and compassionate attitudes
• Patience while debating
We Value Productivity
• Disciplined to remain on-topic
• Recognition of own weaknesses
• Solo and co-op problem solving


text:
# Euler's proof of the infinitude of primes

Almost all of us are familiar with Euclid's proof regarding the infinitude of primes but in this post I will discuss the way Leonhard Euler approached it.I didn't find this proof on anywhere on Brilliant so I decided to do a post on this.

Leonhard Euler

Image Credit:Wikipedia

$$\textbf{Proof:}$$According to the fundamental theorem of Arithmetic every integer$$n$$ can be represented as the product of prime numbers $$n = p_1^{a_1} p_2^{a_2}...... p_k{a_k}$$.

Let us assume there are finitely many primes $$p_1<p_2<p_3<......<p_n$$.

Let us denote by $$N$$ the following product:

$N = (1 + \frac{1}{p_1}+\frac{1}{p_1^{2}}+\frac{1}{p_1^{3}}+...)(1 + \frac{1}{p_2}+\frac{1}{p_2^{2}}+\frac{1}{p_2^{3}}+..)....$ $....(1 + \frac{1}{p_n}+\frac{1}{p_n^{2}}+\frac{1}{p_n^{3}}+...)$

Now for each term in the product we can evaluate the sum of the expression using infinite GP(since $$\frac{1}{p_i}<1$$ ) to be : $(1 + \frac{1}{p_i}+\frac{1}{p_i^{2}}+\frac{1}{p_i^{3}}+...) = \frac{p_i}{p_i-1}$

So clearly the expression on the right hand side is finite...so N corresponds to a finite expression. - (1)

But now if we multiply out the terms in n then we will get the sum of the reciprocals of all the natural numbers because every natural number is the product of primes and each distinct combination of primes lead to a natural number.Clearly we can see that the product of the expressions in N leads to the occurrence of every possible combination of the prime numbers in the denominator and hence the reciprocals of all natural numbers . That is

$N = (1 + \frac{1}{p_1}+\frac{1}{p_1^{2}}+\frac{1}{p_1^{3}}+...)(1 + \frac{1}{p_2}+\frac{1}{p_2^{2}}+\frac{1}{p_2^{3}}+..)....$ $....(1 + \frac{1}{p_n}+\frac{1}{p_n^{2}}+\frac{1}{p_n^{3}}+...)$

$N = 1+\frac{1}{2}+\frac{1}{3}+........$

We know that this series is diverging which contracts equation 1 which proved the finiteness of N.Hence we have a contradiction!!

So there are infinitely many primes.

$$\textbf{Personal Note:}$$It will be extremely helpful for me if Mr.Calvin Lin and other staff members offer a bit of constructive criticism of my posts and offer some advice on how I can improve my writing skills.My peers are also welcome to do the same..Here are my previous posts:

Partitioning of integers

Fermat's Method of infinite descent

Stacking problems

4 years, 2 months ago

MarkdownAppears as
*italics* or _italics_ italics
**bold** or __bold__ bold
- bulleted- list
• bulleted
• list
1. numbered2. list
1. numbered
2. list
Note: you must add a full line of space before and after lists for them to show up correctly
paragraph 1paragraph 2

paragraph 1

paragraph 2

[example link](https://brilliant.org)example link
> This is a quote
This is a quote
    # I indented these lines
# 4 spaces, and now they show
# up as a code block.

print "hello world"
# I indented these lines
# 4 spaces, and now they show
# up as a code block.

print "hello world"
MathAppears as
Remember to wrap math in $$...$$ or $...$ to ensure proper formatting.
2 \times 3 $$2 \times 3$$
2^{34} $$2^{34}$$
a_{i-1} $$a_{i-1}$$
\frac{2}{3} $$\frac{2}{3}$$
\sqrt{2} $$\sqrt{2}$$
\sum_{i=1}^3 $$\sum_{i=1}^3$$
\sin \theta $$\sin \theta$$
\boxed{123} $$\boxed{123}$$

Sort by:

I like User Submitted posts on Brilliant...I get to learn so many new things! If I may make a suggestion, could you write about methods of finding extremes of a function as one of your next posts? I was wondering what methods exist and had put up a post for the community, but didn't get any satisfactory responses. See https://brilliant.org/discussions/thread/extremes-of-a-function/?ref_id=105581

- 4 years, 2 months ago

Do you mean finding the maxima and minima using calculus? That's a great idea... actually I was thinking about doing one on Newton' method of approximating roots of a function...

- 4 years, 2 months ago

I meant the various ways by which we can find the extremes, because sometimes, calculus is overkill for a question, but some inequality, say Cauchy Schwarz, makes short work of it. So I wanted a sort of guideline as to which technique to choose when.

- 4 years, 2 months ago

Maybe we can start a new thread for that where many people will be able to express their approach towards these problems???That would be cool..

- 4 years, 2 months ago

Yea, that's what I had in mind...but my post didn't garner many comments or any real discussion...I need more re shares.

- 4 years, 2 months ago


text:
+0

# Math hard question

+1
303
3

What is 14+17+20+23+....+317

Oct 19, 2017

#1
+349
+1

This is equal to $$14+(14+3)+(14+3*2)...$$

Separate the 14s: $$14*102+3+3*2+...+3*101$$

Factor: $$14*102+3(1+2+...+101)$$

Evaluate: $$1428+3(1+2...+101)$$

Sum of consecutive integers = $${n(n+1)\over2}$$

Evaluate again: $$1428+3({101(102)\over2})$$

$$1428+3*5151$$

$$1428+15453$$

Final answer = $$16881$$

Oct 20, 2017
#2
+1

Number of terms = [317 - 14] / 3  +  1 = 102

[F + L] / 2  x 102 =, where F=First, L=Last.

[14 + 317] / 2  x 102 =16,881

Oct 20, 2017
#3
+95859
+1

We have

[a1 + an ] ( [ an - a1 ] / 3 + 1 ) / 2

Where a1 and an are the first and last terms to be summed  and

( [ an - a1 ] / 3 + 1 ) / 2     are the number of pairs of equal sums to be added together

So we have

[ 14 + 317 ] ( [317 - 14 ] / 3  + 1 )  / 2  =  16881

Oct 20, 2017


text:
## Not signed in

Want to take part in these discussions? Sign in if you have an account, or apply for one below

## Discussion Tag Cloud

Vanilla 1.1.10 is a product of Lussumo. More Information: Documentation, Community Support.

• CommentRowNumber1.
• CommentAuthorUrs
• CommentTimeNov 17th 2015
• (edited Nov 17th 2015)

A question a little into the blue, please bear with me:

It is natural to consider global equivariant stable homotopy theory for collections of finite subgroups. If we take the collection of finite subgroups of $SO(3)$ (or maybe $SU(2)$) then these are the finite groups in the ADE classification. This is clearly a special case, of sorts.

Is there any dedicated discussion of global homotopy theory in this ADE situation?

For what it’s worth, I am still motivated by trying to find a cohomological home for the gauge enhancement mechanism. Whatever that means, it’s a fact that in M-theory one is considering spaces with actions by precisely the finite groups in the ADE classification, and hence any cohomology theory one would like to associate here would plausibly be global equivariant with respect to the collection of finite groups in the ADE classification.

In particular, I have some indication that the correct cohomology theory to use should be a version of cohomotopy, but I know that plain stable cohomotopy is not correct, because the unstable homotopy group $\pi_7(S^4)$ needs to remain non-torsion. I am wondering if in the global sphere spectrum for the collection of finite ADE groups this could work out, for some suitable representation sphere…

• CommentRowNumber2.
• CommentAuthorDavid_Corfield
• CommentTimeNov 18th 2015

So the collection of finite subgroups of $SO(3)$ is a ’global family’ in the sense of Schwede’s book Global homotopy theory?

Definition 7.1. A global family is a non-empty class of compact Lie groups that is closed under isomorphism, closed subgroups and quotient groups.

There’s no chance of their being a quotient which is not a subgroup, as when the quaternion group of order 8 has the Klein group as quotient but not subgroup?

[Hmm, the quaternion group is a finite subgroup of $SU(2)$. But I guess the Klein group is also a subgroup.]

There is work on “global families of finite groups” as in Symmetric spectra model global homotopy theory of finite groups.

• CommentRowNumber3.
• CommentAuthorUrs
• CommentTimeNov 19th 2015
• (edited Nov 19th 2015)

Sorry, I should have been more to the point: there are many different ways known to model G-equivariant stable homotopy groups. Independently of that, what I am after first of all is this:

For which (if any) finite groups $G$ with 3-dimensional orthogonal representation $V_3$ does the quaternionic Hopf fibration represent a non-torsion element in the $G$-equivariant stable homotopy groups of spheres in RO(G)-degree $V_3$?

I have found one computation that goes in this direction, Araki-Iriye 82, summarized here.

They consider the simplest case $G = \mathbb{Z}_2$. And they find in this case that the complex Hopf fibration does become non-torsion. The quaternionic Hopf fibration, however, they show is still of order 24, as in the non-equivariant case.

But maybe if we go beyond just $\mathbb{Z}_2$, also the quaternionic Hopf fibration has a chance to become non-torsion?

• CommentRowNumber4.
• CommentAuthorDavid_Corfield
• CommentTimeNov 20th 2015

Sounds like a question for MathOverflow.

Was the idea from #1 that even if there’s no positive answer for #3 with any particular $G$, that there might be a family for which the global answer is what you want?

• CommentRowNumber5.
• CommentAuthorUrs
• CommentTimeNov 20th 2015
• (edited Nov 20th 2015)

The idea of #1 was that I didn’t want to fix one of the ADE finite groups, but consider them all at once. But before I worry about that, I should see if for any fixed one I get what I need in the first place.

Here is a reason to think it could work:

the construction of the complex Hopf fibration as a non-torsion element in the $\mathbb{Z}/2$-equivariant stable homotopy groups of spheres in Araki-Iriye 82, top of p.24 relies on the fact that a) multiplication of complex numbers is $\mathbb{Z}/2$-equivariant with respect to complex conjugation, and b) that the Hopf construction applied to the unit circle in the complex numbers is compatible with this action.

Now, analogously, the product of quaternions is of course equivariant with respect to the $SO(3)$-action on their imaginary part. That suggests that in analogy the quaternionic Hopf fibration should represent elements in the G-equivariant stable homotopy groups of sphere in the RO(G)-degree given by the restriction of the defining representation of $SO(3)$ to the inclusion of finite subgroups, hence to the finite groups in the ADE series.

I’d like to know these equivariant stable homotopy groups in “ADE degrees” in total, but first of all I’d need to know if any one of them contains a non-torsion summand.

• CommentRowNumber6.
• CommentAuthorDavid_Corfield
• CommentTimeNov 20th 2015

I wonder what effect the “in total” has. Does it tend to remove torsion (something like the least common torsion for the different $G$)?

If so, might you not have torsion for all groups, but ’coprime’ so it disappears in total?

• CommentRowNumber7.
• CommentAuthorUrs
• CommentTimeNov 20th 2015
• (edited Nov 20th 2015)

Ah, no, the global version would just relate all the $G$-equivariant homotopy groups to each other, for all $G$ in the collection. But that a Hopf fibration goes from being a torsion generator in plain stable homotopy groups to a non-torsion generator in $G$-equivariant stable homotopy groups must be an effect of the $G$-equivariance at any fixed $G$: The $G$-equivariance makes the Hopf fibration more rigid, where without equivariance its square may be “unwound” to become stably trivial, for $G$–equivariance this unwinding has to happen $G$-equivariantly, too, and that may make it impossible. This is, if I see correctly,what does indeed happen with the complex Hopf fibration with $\mathbb{Z}/2$-equivariance. It seems natural to wonder whether it also happens for the quaternionic Hopf fibration with equivariance with respect to any finite subgroup of $SO(3)$.

• CommentRowNumber8.
• CommentAuthorUrs
• CommentTimeNov 20th 2015

I have forward the question to MO.

• CommentRowNumber9.
• CommentAuthorDavid_Corfield
• CommentTimeNov 22nd 2015

• CommentRowNumber10.
• CommentAuthorUrs
• CommentTimeNov 23rd 2015
• (edited Nov 23rd 2015)

Thanks to Charles! I was getting a bit bogged down in unwinding technicalities, but his argument is much more direct and quite simple.

It occurs to me that the exlusion of the cyclic among the finite ADE groups which is found to be necessary thereby actually matches the situation in the application that motivates me here: the same exclusion is seen for instance in

See p. 3.

I started a remark on this at G2-manifold – With ADE orbifold structure but no time right now to expand on it properly.

• CommentRowNumber11.
• CommentAuthorUrs
• CommentTimeDec 4th 2015
• (edited Dec 4th 2015)

I am wondering if this algebraic K-theory of A-type singularities could be related to the above story of stable cohomotopy at D- and E-type singularities

• CommentRowNumber12.
• CommentAuthorUrs
• CommentTimeDec 8th 2015
• (edited Dec 8th 2015)

The next thing I need to figure out is this: given that finite non-cyclic subgroup of $SO(3)$ and with $S^4$ regarded as a $G$-space, then given an 11-dimensional circle fibration of $G$-spaces, I need to understand the corresponding equivariant Atiyah-Hirzebruch spectral sequence for $G$-equivariant 4-shifted stable cohomotopy $[X_{11},\Sigma^\infty_G S^4]_G$, and I need to check that it gives a kind of correction to the Atiyah-Hirzebruch spectral sequence for self-dual topological K-theory on $X_{10}$.

Is there any discussion of Atiyah-Hirzebruch-type spectral sequences for genuine $G$-equivariant cohomology?

• CommentRowNumber13.
• CommentAuthorUrs
• CommentTimeDec 9th 2015

I am preparing some talk notes here: Generalized cohomology of M2/M5-branes (schreiber)

• CommentRowNumber14.
• CommentAuthorUrs
• CommentTimeDec 9th 2015

Is there any discussion of Atiyah-Hirzebruch-type spectral sequences for genuine G-equivariant cohomology?

I see that theorem 3.1 in Kronholm 10 goes in this direction. It gives the analog of the AHSS for Mackey functors. Combined with the Greenless-May splitting that gives at least some of the information.

• CommentRowNumber15.
• CommentAuthorDavid_Corfield
• CommentTimeDec 9th 2015

Great to see the role of the E-series groups in fundamental physics as Plato more or less predicted :)

• CommentRowNumber16.
• CommentAuthorDavidRoberts
• CommentTimeDec 9th 2015

Given that you’re interested in the case that the AHSS is applied to a fibration with fibre $S^1$, does this simplify things somewhat? Can we pin down what sort of actions one gets on the circle by (A)DE subgroups of $SO(3)$?

• CommentRowNumber17.
• CommentAuthorUrs
• CommentTimeDec 9th 2015

Given that you’re interested in the case that the AHSS is applied to a fibration with fibre $S^1$, does this simplify things somewhat?

It should, yes.

Can we pin down what sort of actions one gets on the circle by (A)DE subgroups of $SO(3)$?

A scan of some possibilities is Atiyah-Witten 01. I am not sure though if there are any general conclusions to be drawn from this zoo. But to get a feeling for what is being considered, go for instance to “Case III” on p.37. This is about 7-manifolds that are cones over $S^3 \times S^3$ obtained by filling one of the $S^3$ to a 3-ball. The ADE-action then is via finite subgroups of $SU(2) = S^3$ acting on either factor or diagonally, and similarly for the $U(1)$-action. You should browse around a bit more in the article to see the possibilities being considered.

• CommentRowNumber18.
• CommentAuthorUrs
• CommentTimeDec 10th 2015

I realize that I have a basic confusion:

is the unit sphere $S^7_{SO(3)} = S(\mathbb{H}\times \mathbb{H})$ (with the $SO(3)$-action coming from the diagonal action of $SO(3) = Aut_{\mathbb{R}}(\mathbb{H})$) $SO(3)$-equivariantly homeomorphic to a representation sphere, $S^V$, hence to a 1-point compactification of a linear and orthogonal $SO(3)$-representation on $\mathbb{R}^7$?

And is it actually strictly necessary to use such representation spheres to have an equivariant suspension isomorphism, or could we also speak about (de-)looping with respect to more general spheres with $G$-action? Or does it not matter?

• CommentRowNumber19.
• CommentAuthorDavidRoberts
• CommentTimeDec 10th 2015

Maybe spheres with a linear G-action with at least one fixed point? This is how one picks a point to stereographically project from, I suppose. One calls this the point at $\infty$. But perhaps these are exactly equivalent to representation spheres?

But considering the action groupoid associated to this, one can probably find a point with a slice that has such a fixed point, and this slice might itself be an H-sphere, for H the stabiliser of that fixed point…

• CommentRowNumber20.
• CommentAuthorDavidRoberts
• CommentTimeDec 10th 2015

And I claim (as per my email) the the V you are looking for in #18 is $\mathbb{H}\times Im(\mathbb{H})$, where the $SO(3)$-action is $Aut_\mathbb{R}(\mathbb{H})$ on the first factor and its restriction on the other factor.

• CommentRowNumber21.
• CommentAuthorUrs
• CommentTimeDec 10th 2015

with at least one fixed point?

At least two fixed points. 0 and $\infty$ :-)

• CommentRowNumber22.
• CommentAuthorDavidRoberts
• CommentTimeDec 10th 2015
• (edited Dec 10th 2015)

I claim this follows from being a linear action ;-) But more generally, one probably wants that if linearity is dropped.

• CommentRowNumber23.
• CommentAuthorUrs
• CommentTimeDec 10th 2015

And I claim (as per my email) the the V you are looking for in #18 is $\mathbb{H}\times Im(\mathbb{H})$, where the $SO(3)$-action is $Aut_\mathbb{R}(\mathbb{H})$ on the first factor and its restriction on the other factor.

Okay, thanks. But I am being dense. How do you see the equivalence?

• CommentRowNumber24.
• CommentAuthorUrs
• CommentTimeDec 10th 2015

Oh, I get it.

• CommentRowNumber25.
• CommentAuthorDavidRoberts
• CommentTimeDec 10th 2015
• (edited Dec 10th 2015)

I’ve added the general statement about constructing representation spheres using S(R×V) to representation sphere. I’m removing the redirect of stereographic projection to Riemann sphere, and will make a new page soon, since there was nothing about the former on the page for the latter.

• CommentRowNumber26.
• CommentAuthorUrs
• CommentTimeDec 10th 2015

Thanks!

• CommentRowNumber27.
• CommentAuthorUrs
• CommentTimeDec 10th 2015
• (edited Dec 10th 2015)

Okay, with that out of the way, now back to the equivariant Atiyah-Hirzebruch spectral sequence.

So I suppose what we should be considering is really the cohomology theory

$H^{(\mathbb{R}^{11}-\mathbb{R}^4_G - \mathbb{R}^7_G)+ \bullet}(-, \Sigma^\infty_G S^4_G) \,,$

where I am writing $\mathbb{R}^4_G$ for the ($G \hookrightarrow SO(3)$)-representation on $\mathbb{R} \oplus Im(\mathbb{H})$ and $\mathbb{R}^{7}_G$ similarly for the representation on $\mathbb{H} \oplus Im(\mathbb{H})$, in accord with what David Roberts has been pointing out above.

This is of the form that

1. the spectral sequence from theorem 3.1 in Kronholm 10 applies; and

2. its $E_2$-page for an $S^1$-fibration gives non-torsion contributions in the degrees in which $H^\bullet(-, \Sigma^4 H \mathbb{Z} \oplus \Sigma^7 H \mathbb{Z})$ does, too (plus possibly loads of further torsion contributions that I have no idea about what they will be)

So this gives, I think, that rationally the cohomology theory called $H^{(\mathbb{R}^{11}-\mathbb{R}^4_G - \mathbb{R}^7_G)+ \bullet}(-, \Sigma^\infty_G S^4_G)$ satisfies the two consistency conditions, that it looks like degree-4 cohomotopy and reduces on 11-dimensional circle fibrations to twisted K-theory on the 10d base, rationally.

The big question then is to which extent it actually coincides with twisted K-theory on the base non-rationally. This looks like it should be interesting either way, both to the extent that it agrees, as well as to the extent that it differs…

• CommentRowNumber28.
• CommentAuthorUrs
• CommentTimeDec 15th 2015
• (edited Dec 15th 2015)

re #17: maybe I was missing the forest for the trees:

let’s focus on the dihedral groups, the D-type finite groups in the ADE-classification. They are generated, as subgroups of $SO(3)$, from a cyclic group $C_p$ and a reflection at the plane of rotation. We should not really fix any one of these but really consider the global equivariant structure as $p$ ranges over the the natural numbers (whence the title of this thread!)

Now, I suppose we are to regard the global dihedral equivariant sphere spectrum as being in particular the global cyclic equivariant sphere spectrum, and as such as a cyclotomic spectrum, which means that we really think of it as a circle-group equivariant spectrum with all the $C_p$ being the finite subgroups of the $S^1$-action.

And then I suppose as we evaluate this now on an 11-dimensional $G$-manifold, it is that very circle action which is the rotation of the M-theory circle fibers.

So it’s not an ADE action and an $S^1$-action, but the $S^1$-action is already subsumed by/reflected in the ADE equivariance, I suppose.

And then it all comes out as it should be: the fixed points are the O-places at the points where the M-theory circle fiber degenerates, hence precisely the O6-planes as in the seminal account in [Sen 97b(https://ncatlab.org/nlab/show/F-theory#Sen97b).

• CommentRowNumber29.
• CommentAuthorUrs
• CommentTimeDec 16th 2015

Hm, if it’s really the cyclotomic sphere that appears in the story, then the interpretation must be like so: the cyclotomic structure is the structure of free loop spaces. In the context of M-theory reductions from 11d spacetimes $X\times S^1$ to 10d spacetimes $X$, these appear in the double dimensional reduction, wich sends cocycles $\nabla \colon X \times S^1 \to E$ to

$X \longrightarrow [S^1, X \times S^1] \stackrel{[S^1, \nabla]}{\longrightarrow} [S^1, E] \,.$

Hm…

• CommentRowNumber30.
• CommentAuthorDavidRoberts
• CommentTimeDec 16th 2015

The so-called ’caloron correspondence’ studied by various people from Adelaide may well be appropriate here. Ray Vozzo is author on most of those papers.

• CommentRowNumber31.
• CommentAuthorUrs
• CommentTimeDec 16th 2015
• (edited Dec 16th 2015)

Thanks for the reminder. I have now added cross-links between caloron correspondence and double dimensional reduction.

• CommentRowNumber32.
• CommentAuthorDavid_Corfield
• CommentTimeDec 16th 2015

’Caloron’, something to do with heat? Supposedly from here, but must dash.

• CommentRowNumber33.
• CommentAuthorDavid_Corfield
• CommentTimeDec 16th 2015

’Caloron’, something to do with heat? Supposedly from here, but must dash.

• CommentRowNumber34.
• CommentAuthorDavidRoberts
• CommentTimeDec 18th 2015
• CommentRowNumber35.
• CommentAuthorDavidRoberts
• CommentTimeDec 25th 2015

@David C

Michael Murray pointed me to this paper, which was actually referred to on Wikipedia. They consider Yang-Mills instantons as being a zero-temperature (or possibly infinitesimal-temperature) state, and the positive finite temperature ’Yang-Mills gas’ solutions they call calorons.

• CommentRowNumber36.
• CommentAuthorUrs
• CommentTimeJan 4th 2016

Thanks. Let’s record that at caloron.

• CommentRowNumber37.
• CommentAuthorDavidRoberts
• CommentTimeJan 5th 2016

Expanded caloron a bit.

• CommentRowNumber38.
• CommentAuthorUrs
• CommentTimeJan 20th 2016
• (edited Jan 20th 2016)

Just for the record: I see that there is a classical article Cook-Crabb 93 which discusses H-spaces in parameterized homotopy theory and finds that for spherical fibrations these come precisely from the $\mathbb{A}$-Hopf fibrations ($\mathbb{A} =$ complex, quaternionic, octonionic, they don’t bother to mention the trivial real case) equipped with their $Aut(\mathbb{A})$-equivariant structure.

That is of course closely related to what we have been discussing here. Though I am not sure if it sheds any further light on what we are after here beyond what we already discussed.

• CommentRowNumber39.
• CommentAuthorUrs
• CommentTimeJan 20th 2016
• (edited Jan 20th 2016)

also Iriye 95

• CommentRowNumber40.
• CommentAuthorUrs
• CommentTimeFeb 17th 2016
• (edited Feb 17th 2016)

What is known about the equivariant complex cobordism ring in degree 3, $\pi_3(M U_G)$ ?

(For $G$ some finite group, preferably a subgroup of $SO(3)$.)

I am wondering because, by the (equivariant) ANSS, we know that to compute M2-brane charge in equivariant stable cohomotopy

$X^4 \times S^7 \simeq S^7 \longrightarrow \Sigma^4 \mathbb{S}_G$

we may equivalently compute it in equivariant complex cobordism

$S^7 \longrightarrow \Sigma^4 \mathbb{S}_G \longrightarrow \Sigma^4 M U_G$

if we furthermore keep the information of the further induced maps into the cosimplicial $M U_G^{\wedge^\bullet}$.

Now a cocycle $S^7 \to \Sigma^4 M U_G$ is of course an element in $\pi_3(M U_G)$ (and there is an equivariant Thom theorem saying that this is indeed still isomorphic to the equivariant complex cobordism ring in degree 3).

This looks interesting with respect to the physics interpretation, because of course non-equivariantly then this vanishes. So we would get here M2-brane charges that vanish in general, except at orbifold fixed points where they correspond to classes of 3-manifolds.

That fits well the physics story of “gauge enhancement” where at the orbifold fixed points there are supposed to be hidden collapsed M2-branes that have shrunk away along the blow-up of the singularity. So if one could see those vanishing cycles kind of stored in $\pi_3(M U_G)$, then that would make a whole lot of sense.

• CommentRowNumber41.
• CommentAuthorDavid_Corfield
• CommentTimeFeb 18th 2016
• (edited Feb 18th 2016)

It seems not much is known according to William C.Abram, Igor Kriz in The equivariant complex cobordism ring of a finite abelian group

Perhaps surprisingly, the problem of calculating explicitly tom Dieck’s stable equivariant cobordism ring $(MU_G)_\ast$ has remained open for the last 40 years.

Presumably their results give the A series at least.

• CommentRowNumber42.
• CommentAuthorUrs
• CommentTimeFeb 18th 2016
• (edited Feb 18th 2016)

Thanks. I glanced over their article, but didn’t yet spot any statement that would tell me which elements I would find in $(MU_{C_p})_3$.

Trouble is that I don’t really have time for this, so maybe I just didn’t look closely enough. I really need to be looking into something else. But if you spot anything, let me know.

• CommentRowNumber43.
• CommentAuthorDavid_Corfield
• CommentTimeFeb 18th 2016

I guess section 4 is about as close as it gets. For $n=1$, then $(MU_{C_p})_\ast$ is given by a pullback of rings.

• CommentRowNumber44.
• CommentAuthorDavid_Corfield
• CommentTimeFeb 18th 2016

Abram’s thesis says

We have given explicit algebraic descriptions of the equivariant complex cobordism ring $MU_G$ and its corresponding equivariant formal group law for $G$ a finite abelian group. The corresponding description of $MU_{Z/p}$ by Kriz [21] was used by Strickland [31] to give generators and relations for $MU_{Z/2}$. The present work should allow Strickland’s computations to be carried over for more general groups $G$.

[31} is Strickland’s Complex cobordism of involutions

• CommentRowNumber45.
• CommentAuthorDavidRoberts
• CommentTimeFeb 18th 2016

Also from Abram’s thesis:

To obtain his result, Strickland makes use of a pullback diagram of Kriz [21] describing $MU_{Z/p}$, to which we will return. A good first step toward a more general result would be a similar diagram for $MU_G$, for more general $G$.

Where [21] is I. Kriz, “The $Z/p$-equivariant complex cobordism ring”, Homotopy invariant algebraic structures, Contemporary Mathematics, American Mathematical Society Publications, Providence, Volume 239, 1999, pp. 217-223.

Theorem II.1 has the diagram from Kriz, and Theorem II.4 (and the preceding discussion) has the generalisation of that diagram to more general abelian groups.

• CommentRowNumber46.
• CommentAuthorUrs
• CommentTimeFeb 19th 2016
• (edited Feb 19th 2016)

Thanks! That’s useful. In particular Comezana’s result, cited as theorem I.18 in Abram’s thesis: for $G$ abelian then $(M U_G)_\ast$ is still all in even degrees. That means that to get what I am after, elements in degree 3, the A-series once again won’t do it.

• CommentRowNumber47.
• CommentAuthorTodd_Trimble
• CommentTimeFeb 19th 2016

(I’ll be: my old friend, Gustavo Comezana. (-: )