I'm a math PhD student, and far from an expert on physics. If anything is ambiguous or uses the wrong terminology, please correct it or let me know.  About a decade ago, a friend gave me a paradoxical thought experiment that I still haven't been able to resolve, although I've asked around here and there:     Suppose that earth and outer space were "flipped" in such a way that the vacuum of space became an earth-like solid and earth became an earth-sized hole in this solid: a "Swiss cheese universe". How much gravity would a person experience if they were standing inside of the earth-sized hole with their feet on the boundary?   I have two mutually exclusive answers which are equally convincing to me. I'm interested to hear an explanation of which answer (if any!) is correct, and where the reasoning breaks down in the wrong answer.  Answer #1: The person experiences earth-like gravity.  This answer argues that for almost every particle in the universe (shown below in blue and red) there is a particle in the "opposite" position which creates an equal and opposite pull. Except for that the particles in an earth-sized sphere right underneath the person (shown in yellow) don't have "opposite" particles, so the net force the person experiences is due to the particles in the earth-sized sphere underneath them.    Answer #2: The person experiences no gravity.  Due to the , if the person is inside of a hollow sphere of any mass and thickness, they experience no force due to gravity. In particular, in the limit, as the thickness goes to infinity, the force due to gravity remains zero.
has two corollaries:   The gravitational attraction of a spherically symmetric body acts as if all its mass were concentrated at the center, and The gravitational acceleration inside the cavity of a spherically symmetric body vanishes.   Consider a spaceship floating freely in space. In a homogeneous universe, the combined attraction from all matter should cancel out, and the spaceship should stay motionless. Nevertheless, I'm free to divide the attraction into several parts originating from different parts of the universe: In the figure below, I've divided the universe into a red sphere centered on some arbitrary point (×) with my spaceship located at the edge of the sphere, plus infinitely many shells centered on the same point.  By corollary #1, the gravitational attraction of the red sphere equals that of all its mass centered at the point ×. By corollary #2, the combined acceleration of the spaceship from all mass in the green shell vanishes. The same can be said for the blue shell, the orange shell, and so on ad infinitum.  Hence my spaceship should start accelerating toward ×. By choosing the sphere large enough, I should be able to make it accelerate arbitrarily fast, and by choosing the location of × I can make it accelerate in any direction.    Of course this doesn't work, but why?  My best guess is that, even in an infinite universe, you can't keep adding spheres because you'll exit the observable universe, in which case there's no way to feel the gravity in part of the shell so that it's no longer symmetric. Perhaps also the expansion of the universe matters. But see the last two points below.  A few more things to consider:   The mass of the red sphere increases with the chosen radius $r$ as $r^3$, while the acceleration it generates is proportional to $r^{-2}$; hence the acceleration increases linearly with the chosen $r$. Our universe — the "Universe" — has an average density of some $10^{-29}\,\mathrm{g}\,\mathrm{cm}^{-3}$. Hence if I set $r$ equal to the radius of the observable Universe (46.3 billion light-years), the acceleration is a minuscule $10^{-7}\,\mathrm{cm}\,\mathrm{s}^{-2}$. If that bothers you, choose another universe where $\rho$ is ten orders of magnitude higher. Our Universe is not really homogeneous, but on large enough scales ($\gtrsim$ half a billion light-years) it seems it is. Still, the acceleration of the spaceship will be dominated by nearby sources. If that bothers you, choose a sufficiently homogeneous universe. On the scales we're considering, the Universe is not governed by Newtonian dynamics, but by general relativity. If that bothers you, use  instead — I think the issue is the same. If the issue is really that the size of the observable universe matters, then my intuition tells me that I can just choose an arbitrarily old universe where the asymmetric contribution from the most distant shells is arbitrarily small. If the issue is that the universe expands (so that gravity from the far side of a shell is somehow weakened, or "redshifted"), then my intuition tells me that I can just choose a sufficiently static universe.
pyvenv vs venv vs python-virtualenv vs virtualenv and python 3 malikarumi@Tetouan2:~$ pip install virtualenv     Collecting virtualenv     Downloading virtualenv-12.0.7-py2.py3-none-any.whl (1.8MB)     100% |################################| 1.8MB 330kB/s   malikarumi@Tetouan2:~$ pip freeze     (a lot of stuff, but not virtualenv)  malikarumi@Tetouan2:~$ virtualenv testvenv1     The program 'virtualenv' is currently not installed. You can install it by typing:     sudo apt-get install python-virtualenv   What is going on here? is python-virtualenv == pyvenv? Isn't that still broken? Does original virtualenv still work with python? if venv (too many name variations!!!) is part of the standard library, , why am I being told to install it?  And when I did try to install it, I got:  malikarumi@Tetouan2:~$ sudo apt-get install python-virtualenv     Reading package lists... Done     Building dependency tree            Reading state information... Done     The following extra packages will be installed:     python-colorama python-distlib python-html5lib python-pip python-setuptools   At which point I aborted, because installing python3-pip just before that had given me   Setting up python3-setuptools (3.3-1ubuntu1) ... Setting up python3-pip (1.5.4-1) ...   And I wasn't sure if the extra packages would overwrite them or go onto python 2.7.  I read that python 3 is supposed to be the default going forward. Since both 2.7 and 3.4 are there, and have separate commands, how do I not only make sure Python 3 is my default, but that anything I install goes there and is used by it instead of 2.7?   BTW, I tried sudo apt-get python3-virtualenv and got: E: Unable to locate package python3-virtualenv I'm still making my way along in Niven's Intro to Number Theory, and the title problem is giving me a little trouble near the end, and I was hoping someone could help get me through it.  Now $x^8\equiv 16\pmod{2}$ is solvable with $x\equiv 0\pmod{2}$, so I assume $p$ is an odd prime. From a theorem earlier in the text,      If $p$ is a prime and $(a,p)=1$, then the congruence $x^n\equiv a\pmod{p}$ has $(n,p-1)$ solutions or no solution according as $a^{(p-1)/(n,p-1)}\equiv 1\pmod{p}$ or not.   So since $(16,p)=1$, the problem reduces to showing that $16^{(p-1)/(8,p-1)}\equiv 1\pmod{p}$ holds for all $p$. I note that $(8,p-1)$ can only take values $2,4,8$. For $2$, the above equivalence is then $4^{p-1}\equiv 1\pmod{p}$, which is true by Fermat's little Theorem. For $4$, it is then $2^{p-1}\equiv 1\pmod{p}$, which again holds by FlT. However, the case where $(8,p-1)=8$ is throwing me off. At best I see that $16^{(p-1)/8}\equiv 2^{(p-1)/2}\pmod{p}$, but I'm not sure how to show this is congruent to $1$ modulo $p$. Maybe there's a more elegant way to do it without looking at cases. Thanks for any insight. Why is wine made 'from' grapes, but tables are made 'of' wood? (1) Wine is an alcoholic beverage made from fermented grapes or other fruits. (Wikipedia) (2) Tables were made of marble or wood and metal (typically bronze or silver alloys), sometimes with richly ornate legs. (Wikipedia)  Why is 'from' used in (1), whereas 'of' is used  in (2)? Is it a stylistic choice whether to use 'of' or 'from'? Or, in case of chemical changing, differently from changing in shape only, 'from' is preferable? Pass An Instantiated System.Type as a Type Parameter for a Generic Class The title is kind of obscure. What I want to know is if this is possible:  string typeName = &lt;read type name from somwhere&gt;; Type myType = Type.GetType(typeName);  MyGenericClass&lt;myType&gt; myGenericClass = new MyGenericClass&lt;myType&gt;();   Obviously, MyGenericClass is described as:  public class MyGenericClass&lt;T&gt;   Right now, the compiler complains that 'The type or namespace 'myType' could not be found." There has got to be a way to do this. How to calculate $\lim_{n\to\infty}(1+1/n^2)(1+2/n^2)\cdots(1+n/n^2)$? Exponent and abelian groups What exponent $e$ can guarantee the group to be abelian? Are there any known results except the case $e = 2$? Thanks for help. See all my questions across all Stack Exchange sites? How to open a file manager of the current directory in the terminal? When I work in terminal, sometimes I want to open the current directory in a GUI file manager. And then to click the items in the window to run the application. How can I do this? How to submit webform programmaticaly? Java Reflection Performance Does creating an object using reflection rather than calling the class constructor result in any significant performance differences? Why has Steve Nash moved to the LA Lakers in sign-and-trade deal? Congratulations to Steve Nash on his move to Lakers !  His contract with the Suns has expired so I don't understand why he moved in a sign-and-trade deal.    Why resign and move in trade? Why didn't the Lakers sign Nash without any trade? xcode app crashing on launch with breakpoint Random spawn location despite sleeping in a bed I am trying to make Minecraft harder, and one of the ways I wish to do this is to have a "pseudo-hardcore" mode where dying spawns you in a random location rather than completely locking you out of the world.  I intend to do this by setting the spawn radius to be very high.  However, I also want to make this "bed-proof" - that is, if someone places a bed and sleeps in it, I want the player to still be spawned in a random location, regardless of their personal spawn point.  How do I do this? Command blocks are fine, but data packs are not preferred. CString to char* We are using the CString class throughout most of our code. However sometimes we need to convert to a char *. at the moment we have been doing this using variable.GetBuffer(0) and this seems to work ( this mainly happens when passing the Csting into a function where the function requires a char *). The function accepts this and we keep going.  However we have lately become worried about how this works, and whether there is a better way to do it.  The way i understand it to work is it passes a char pointer into the function that points at the first character in the CString and all works well.  I Guess we are just worried about memory leaks or any unforseen circumstances where this might not be a good idea. What are the differences between an Ubuntu Long Term Support release (LTS) and a normal release? Is there an emulator or wine type environment that would allow use of android apps on linux? I have researched and found out long time no see is a direct translate from the Chinese phrase, 好久不见. As much as we use it almost everyday in our lives, is it actually grammatically correct? Since it is a direct translate, is it grammatically approved? Can all real polynomials be factored into quadratic and linear factors? Product of invertibles in $\Bbb Z_n$ [Wilson's Theorem generalization] How can we compute the product of all invertibles in $\Bbb Z_n$?  In the special case $n=p$ where $p$ is a prime it is Wilson's theorem. By pairing inverses it reduces to computing the product of all $a$ such that $a^2\equiv 1\pmod{n}.\,$  How can we do that? Charging Li-ion batteries in parallel I wanted some opinion on my set up here, just to make sure I got the basics right.  I have a Li-ion battery charging circuit based on the MCP73113. This is designed to be a single-cell battery charger.   The battery itself (3.7V, 650mAh) comes with its own PCB with Schottky diode and current regulators as protection. EDIT: Not a Schottky diode. Current limiter and a Protection IC.  By design, they work together just fine.  I have more batteries from the same manufacturer and wanted to make higher capacity packs by putting two cells in parallel. The two cells come with their own PCB, but I only kept one of them, as I soldered their leads together. It seems to work and they are charged and discharged just like regular batteries (3.7V, now 1300 mAh).  However, not all the packs I made work smoothly and I get a failure rate of 2 in every 10 packs. They all start out normally, but occasionally when the batteries are not charged for some time, or are used up, they tend to not work anymore. So far, in only 1 pack I found the voltage to be different (both now below 2V, aka dead).  I assume my method is not the right approach to ensure 100% success rate, so I was wondering how can this be solved. All the controllers I looked into was designed for multiple cells in series, not parallel. Am I fundamentally missing something here?