text:
## Fall 2010 UBC

### Public Lecture

There’s a math conference (Canadian Mathematical Society) going on this Saturday, Sunday and Monday in Vancouver.  I’ll be speaking there, but you probably aren’t interested in a research talk.  What you might be interested in, though, is the Public Lecture.  The Public Lecture is a long tradition in math conferences (and other places): it’s aimed at a non-specialist lay-person audience.  It’s usually entertaining and very down to earth.  This year’s speaker is reported to be excellent.

Saturday, 20:00 – 21:00: Saturday, December 4th, 2010
Coast Plaza Hotel & Suites – 1763 Comox Street, Vancouver

Abstract:

RON GRAHAM, University of California at San Diego
Searching for the Shortest Network

Suppose you are given some set of cities and you would like to connect them all together with a network having the shortest possible total length. How hard is it to find such a shortest network? This classical problem has challenged mathematicians for nearly two centuries, and today has great relevance in such diverse areas as telecommunication networks, the design of VLSI chips and molecular phylogenetics. In this talk, I will summarize past accomplishments, present activities and future challenges for this fascinating topic.

Here’s the flyer:  Public Lecture

### MOVIE NIGHT IS CONFIRMED!

Come to Movie Night and find out how spheres intersecting the plane upset impressionable young polygons in “Flatland: The Movie”, and then enjoy the classic “Good Will Hunting” study break!

December 3rd, MATH 100

FLATLAND, 5:40 pm (trailer)

GOOD WILL HUNTING, 6:20 pm (trailer)

Doors open at 5:30 pm.

Kate.

### Nearing the End!

Just two more classes, can you believe it?  Is there life after vector calculus?

Important things to know as you head toward the unknown:

0) On Wed (Dec 1st) we will have homework hand-in instead of a quiz, no dice roll.  This is because there’s so little precious lecture time left!

1) Office Hours this week:  Wed, Dec 1st, 11-12, Math 126 / Fri, Dec 3rd, 11-12, Sowk 122.

2) Office Hours during the exam period will be announced on this blog.

3) Movie Night is the afternoon of Dec 3rd, and will be advertised in a separate post on this blog.

4) There will be a final Divergence Theorem homework assigned on Wednesday but it is not to hand in (no credit, no due date, but solutions will be posted).

5) Review problems for the final will be posted on a continuing basis, under “Homework” on the website.  In other words, I’ll post a package of review problems shortly, and then as I think of even more review problems, I may post more.

6) Review-Question Game Show!  The last class, Fri, Dec 3rd we’ll have a team competition for prizes.  Info in a separate post.

7) I will be putting up an online system whereby you can check your own grades against my grading sheet to ensure no errors.  Info in a separate post when that happens.

By popular demand, here are the numerical answers to the book problems, to help you tell if you’re on the right track.  Important: if your minus sign disagrees, figure out why, don’t just change it and hope!  I will grade your explanation for the sign of your answer carefully, so an unexplained but correct sign won’t get full marks.  Explain yourself!!

17.7 #20: $\frac{\pi^3}{6}$

#22 $\frac{\pi}{3}$

#28: $4\pi$

#42 $0$ kg/s

#44 $24 \varepsilon_0$

17.8 #2 $-18\pi$

#6 $0$

#8 $2e-4$

### Hwk #12, Problem 17.7 #42

#### Q.  For our current homework I was wondering whether, for #42, the density matters at all and if so how would we use it? For my answer I got zero, but if it were to be a non-zero answer how would we include the density in our calculations?

A. Excellent question.   Stewart explains the relationship between flux and fluid flow at the beginning of the section “Surface Integrals of Vector Fields” in 17.7.  You can read that and compare to what I’m about to say.

A useful strategy for physics problems is to think about units.  What does “fluid flow through a surface” mean and how would we measure it?  We would measure it in mass per time. (Aside: We could measure it in volume/time, but if it’s a compressible fluid, the same amount of fluid might occupy a different volume at different times, so that’s not as good a conventional choice.  So mass per time it is.)

If our vector field is a velocity field (the question stipulates this, as does the discussion in the chapter that a referenced above), then the units of the velocity field are distance per time (aka velocity).  When we do a surface integral $\iint_S \mathbf{F} \cdot d\mathbf{S}$, we are adding up little pieces “$\mathbf{F} \cdot \mathbf{n}$“.  The unit normal is unitless; it’s just a way of taking a component of $\mathbf{F}$, i.e. $\mathbf{F} \cdot \mathbf{n}$ has units distance/time.  So when we add up lots of distance/time over an area (area is (distance)^2), we get distance^3/time.  In other words, that gives us an answer in volume/time.  If we want an answer in mass/time, we need to multiply by the density, mass/volume.  So the calculation the question is actually asking for is $\iint_S \rho \mathbf{F} \cdot d\mathbf{S}$.

Unfortunately, the answer is zero, and $0 = \rho 0$, so the zero obscures the dependence on $\rho$.  But the correct answer is actually 0 kg/s.  (I’m glad you asked.  Stupidly, #41 also has answer 0.  Obviously the one who designed the questions didn’t think about this type of possible misunderstanding.)

Hi everyone,

Hope you’re enjoying those parametrisations.  I hope you’ll check in with each other as you do them, to catch errors.  Here are the numerical answers to the book problems, to help you tell if you’re on the right track:

17.6 #38: $9 \sqrt{30} \pi$

#42 $\frac{1}{24}(26^{3/2} - 10^{3/2})$

#46: $\frac{\pi}{2}(\sqrt{2} + \ln(1+\sqrt{2}))$

#58 $16$

17.7 #6 $\frac{1}{\sqrt{6}}$

#10 $\frac{4\pi}{3}$

#14 $(\frac{32}{3} - 6\sqrt{3})\pi$

#18 $241\pi$

#38 $108 \sqrt{2} \pi$

### Klein Bottles!

For all kinds of fun, visit

http://www.kleinbottle.com/

(To see the guy who sells these, check out this video.  He’s a real character.)

Great ideas for presents for dad or for the fluid dynamics buff in your family.    Just make sure to check out the details.  If you want to make your own, sew up the “hole” in the mobius strip you made (you might find this easier if you knit it out of wool):


text:
# Drawing validation set from test set

I am building a 3 neural network models on dataset that is already separated to train and test sets. From my analysis, I found that this dataset has values on test set which don't exist in the train set. And this gives a certain limitation or maximum capacity to my neural network model(s). By this I mean, I can not seem to improve the accuracy even if I change the hyper parameters or the parameters of my models.

I have created 3 neural networks models and varied almost everything:

1. Number nodes/hidden layers,
2. Input features (performed feature selection and space reduction),
3. Activation functions and loss functions,
4. regularization, optimizer and more,

When I try to average the predictions of the 3 models, I don't see any improvements. Although I've read a lot that if I change such parameters I might have some uncorrelated models. But this wasn't the case for me because I always find correlation between my model predictions when I compute Pearson Correlation

After building all these models, I am pretty sure that the training set and test set are not drawn from the same distribution (i.e. they are not a random split of some full original dataset), which means that other features probably also have a different distribution.

Some proposed I could merge the training+test, but I don't want to do that as this dataset was developed in this way. But I would like to draw my validation set from the test set, is this possible? Can I use a validation set randomly drawn from the test set to tune models?

format: plain


text:
mersenneforum.org Mersenne Primes Help!!
 Register FAQ Search Today's Posts Mark Forums Read

 2021-10-28, 06:57 #1 CarmeloLabadie   Oct 2021 18 Posts Mersenne Primes Help!! My recent assignment is to find Mersenne Primes between 2 and 1,000,000. For the first part of my code, I have a function to find out if a number is prime or not. The second part of my program runs a Lucas-Lehmer test to find the Mersenne number. My problems are many: How do I get the prime numbers in the first part of my program to loop through the second part, then display as I've formatted in my final cout statements? This is CS1 so I'm sure the instructor is trying to weed out the less dedicated. This is my nth version, I can't do it without help anymore! Thanks Code: #include #include #include using namespace std; const int LIM = 19; long power2 (long n); bool isPrime(int n); int main() { int s,n,i; long p; //p is an odd prime int num; int mPrimes; while (num >= 1 && num <=LIM) { if (num%2!=0 && num%3 !=0 && num%5 !=0) { num = p; num+=2; } } //Mersenne calculations. s=4; //s is the Lucas-Lehmer number where s(0)=4 p+=2; n=2; for (i=1 ; i

> reply; return 0; Last fiddled with by retina on 2021-10-28 at 07:03 Reason: Code tags are for code

 2021-10-28, 07:34 #2 paulunderwood     Sep 2002 Database er0rr 22·1,063 Posts Firstly you need to address multiple-precision through the use of limbs or an array of integers. Does your program deal with overflow beyond 64 bits? Are you allowed to use a library such as GMP? If you are not allowed to use GMP then you could roll your own trial division function,and a Fermat PRP test function and run it on "p" with a few different bases to greatly weed out composite "p". Once you find a PRP "p" you can also call a trial division function to do division of Mp by 2*k*p+1 for a domain of smallish "k" and finally do a (multiprecision) Lucas-Lehmer test, using you own addition and multiplication functions and a mod Mp function, Last fiddled with by paulunderwood on 2021-10-28 at 07:51
 2021-10-28, 07:50 #3 Brownfox     Dec 2017 3×52 Posts Question: Is it the Mersenne prime that needs to be less than 1,000,000 (so you only need to consider Primes up to 2^23-1) or the exponent - so you need to worry about 300,000 digit numbers? You probably want to read up about arrays.
2021-10-28, 08:05   #4
paulunderwood

Sep 2002
Database er0rr

22·1,063 Posts

Quote:
 Originally Posted by Brownfox Question: Is it the Mersenne prime that needs to be less than 1,000,000 (so you only need to consider Primes up to 2^23-1) or the exponent - so you need to worry about 300,000 digit numbers? You probably want to read up about arrays.
Hah, good point! If the numbers are less than 1,000,000 then the problem is greatly reduced. You need to do trial division for p<=19, (maybe trail division of Mp by 2*k*p+1), and an LL test. Structure you main function with sub-functions TF and LL. Call the latter if the former passes.

Looking at you code, you assign num with p -- this looks wrong.

Does C++ do exponentiation? At least you could shift 1 left by p and subtract 1.

Hint: for the "TF" function you might want to use sqrt().

Last fiddled with by paulunderwood on 2021-10-28 at 13:11

 2021-10-28, 13:25 #5 Dr Sardonicus     Feb 2017 Nowhere 2·13·227 Posts I'm not a programmer, but it looks to me like you're looking at 2p - 1 for odd primes p < 20. I note that there is one even prime number. It may yield a Mersenne prime. I don't know whether the assignment requires you to use LL, but (as already noted) for such small exponents, trial division is pretty quick. Trial division would also avoid a possible difficulty: You might want to consider whether the computation s = s*s could cause an integer overflow.
 2021-10-28, 14:58 #6 Dobri   "Καλός" May 2018 73 Posts Code: // Dev-C++ Code #include #include using namespace std; bool PrimeCheck(long int n) { long int i,imax; if (n<=1) return false;if (n==2) return true;if (n%2==0) return false; imax=(long int)floor(sqrt(n));for(i=3;i<=imax;i+=2){if(n%i==0){return false;}} return true; } int main() { long int i,MRange,MpRange; MpRange=1000000;MRange=(long int)ceil(log2(MpRange+1)); for(i=2;i<=MRange;i++){if(PrimeCheck(i)==true){if(PrimeCheck(((long int)pow(2,i)-1))==true){cout<
 2021-10-28, 15:11 #7 paulunderwood     Sep 2002 Database er0rr 22×1,063 Posts This sub-forum is for help not complete solutions! Anyway, I'd like to see an LL test. I.e. isPrime(p,sqrt(p))&&passesLL((1<
2021-10-28, 15:17   #8
Dobri

"Καλός"
May 2018

73 Posts

Quote:
 Originally Posted by paulunderwood This sub-forum is for help not complete solutions!
I did not provide a complete solution. The OP still has to compute the Mp from the output I provided.
Also, the OP still has to display the result according to the format in their final cout statements.

2021-10-28, 23:02   #9
Dobri

"Καλός"
May 2018

34310 Posts

Quote:
 Originally Posted by paulunderwood Anyway, I'd like to see an LL test. I.e. isPrime(p,sqrt(p))&&passesLL((1<
Code:
// Dev-C++ Code
#include <iostream>
#include <math.h>

using namespace std;

bool PrimeCheck(long long int n)
{
long long int i,imax;
if(n<=1){return false;}if(n==2){return true;}if(n%2==0){return false;}
imax=(long int)floor(sqrt(n));for(i=3;i<=imax;i+=2){if(n%i==0){return false;}}
return true;
}

bool LL(long long int p)
{
long long int i,Mp,s;
if(p<=1){return false;}if(p==2){return true;}if(p%2==0){return false;}
s=4;Mp=(long int)pow(2,p)-1;for(i=1;i<=(p-2);i++){s=((s*s)-2)%Mp;}
if(s==0){return true;}else{return false;}
}

int main()
{
long long int i,MRange,MpRange;
MpRange=1000000;MRange=(long int)ceil(log2(MpRange+1));
for(i=2;i<=MRange;i++){if(PrimeCheck(i)==true){if(LL(i)==true){cout<<i<<"\n";}}}
return 0;
}

2021-10-29, 03:37   #10
Batalov

"Serge"
Mar 2008
Phi(4,2^7658614+1)/2

100110101100012 Posts

Quote:
 Originally Posted by Dobri Code: Mp=(long int)pow(2,p)-1;
That's not good, calling a double function, and casting? why (long int)? Maybe (long long int)?
Code:
Mp=(1ULL<<p)-1;
And where are the obligatory exits for the natural limitations of this trivial method?
Hint:
Code:
if(p>63) {perror("Can only handle 64-bit  values, hence p must be < 64\n");exit(-1);}`

 2021-10-29, 07:29 #11 paulunderwood     Sep 2002 Database er0rr 22·1,063 Posts In a general sort of way -- top-down I suppose -- I would do the following. If withinLimits(n,1000000) && isMersennePrime(n) then printLine(n). isMersennePrime(n) iff n==2 || (isPrime(n) && passesLL(n)) isPrime(n) iff n%i != 0 for i = 2 up to sqrt(n) passesLL(n) iff s(n-2)==0 where s(0)=4 and s(k)=(s(k-1)*(k-1)-2)%Mn Note sqrt(n) and n-2 should not be the terminating conditions for loops but assigned to variables. Last fiddled with by paulunderwood on 2021-10-29 at 08:00

 Similar Threads Thread Thread Starter Forum Replies Last Post carpetpool Miscellaneous Math 4 2022-07-14 02:29 emily Math 34 2017-07-16 18:44 siegert81 Math 2 2011-09-19 17:36 Unregistered Information & Answers 0 2011-01-31 15:41 optim PrimeNet 13 2004-07-09 13:51

All times are UTC. The time now is 06:32.

Mon Aug 15 06:32:07 UTC 2022 up 39 days, 1:19, 1 user, load averages: 1.27, 1.13, 1.13


text:
# GW190425: Observation of a Compact Binary Coalescence with Total Mass ~ 3.4 M ⊙

LIGO Scientific Collaboration and Virgo Collaboration, Gabrielle Dawn Allen, Paul Milton Ricker, Edward Seidel

Research output: Contribution to journalArticle

### Abstract

On 2019 April 25, the LIGO Livingston detector observed a compact binary coalescence with signal-to-noise ratio 12.9. The Virgo detector was also taking data that did not contribute to detection due to a low signal-to-noise ratio, but were used for subsequent parameter estimation. The 90% credible intervals for the component masses range from $1.12$ to $2.52\,{M}_{\odot }$ ($1.46$–$1.87\,{M}_{\odot }$ if we restrict the dimensionless component spin magnitudes to be smaller than 0.05). These mass parameters are consistent with the individual binary components being neutron stars. However, both the source-frame chirp mass ${1.44}_{-0.02}^{+0.02}\,{M}_{\odot }$ and the total mass ${3.4}_{-0.1}^{+0.3}{M}_{\odot }$ of this system are significantly larger than those of any other known binary neutron star (BNS) system. The possibility that one or both binary components of the system are black holes cannot be ruled out from gravitational-wave data. We discuss possible origins of the system based on its inconsistency with the known Galactic BNS population. Under the assumption that the signal was produced by a BNS coalescence, the local rate of neutron star mergers is updated to 250–2810 $\,{\mathrm{Gpc}}^{-3}\,{\mathrm{yr}}^{-1}$.
Original language English (US) Astrophysical Journal Letters 892 1 https://doi.org/10.3847/2041-8213/ab75f5 Published - Mar 19 2020

### Keywords

• gravitational waves
• neutron stars


text:
# Thread: Differential Equation for Continuously Compounded Interest

1. ## Differential Equation for Continuously Compounded Interest

How do I use differential equations to get

dM/dt = r(t)M(t)

to equal to

M = E.e^[-(integral from T to t) of r(s)ds]

Where r is the continuous compounded interest which is a function of t and E= M(t) and theT represents some future time.

Where did the ds come from or the r(s) for that fact

2. The r(s) and the ds both come from being "dummy" variables. What you're doing here to solve the problem is separating the variables: divide both sides by M(t), and then integrate w.r.t. t. The integral on the RHS is equivalent to an indefinite integral w.r.t. t.

Does that make sense?

3. Ahhhhh Yeah I see how it's done THANKS a lot!

4. You're welcome!


text:
Forum:How to Use Biostars Part-3: Formatting Text and Using GitHub Gists
3
8
Entering edit mode
2.9 years ago
Ram 34k

This post addresses the following points:

• Formatting text: Strikethrough
• Formatting text: Tabular data
• Using GitHub Gist to post code/text
• Formatting text: The Edit/Formatting bar (Work in Progress)
how-to meta documentation Page • 1.3k views
3
Entering edit mode
2.9 years ago
Ram 34k

## Using GitHub Gist to post code/text

TL;DR: Create a new gist on github by pasting your content/uploading a file, copy the link to the gist and paste it here on Biostars. Paste it directly in the text; don't use the hyperlink toolbar option.

Biostars has a character limit to each new post. I think the current limit is 5000 characters, which is a number rarely hit unless one is posting a lot of code or text.

The way to paste a long piece of code (or any text content, for that matter) is to embed a GitHub gist in the body of the post. This way, the content is hosted at GitHub and can be reused anywhere that supports embedding gists (which is a lot of places).

GitHub gists also have the advantage of supporting language-specific syntax highlighting, which makes embedded code look better (and thus easier on the eyes). The embed panel also minimizes to not take up too much screen space, and users can always retrieve the raw text with a few clicks.

I'll be pasting the texts from above in a GitHub gist to demonstrate how to do this.

A GitHub account is a prerequisite for this - these are free and as a bioinformatician you should have one :-)

2. You should be taken to the "New gist" page, as shown below:

3. Add a Gist description and a filename (including the proper extension for the content of the post). I'm pasting plain text here, so my extension will be .txt. This is an example for a gist with Perl code (see it in action here) and this gist contains Java code (see it in action here).

4. Paste the content in the large box. If you already have a file that you'd like to upload, use the Add file button. Choose your preferences for Indenting (Spaces/Tabs), Indent Size and Wrap (or leave them at their defaults).

5. Click on one of the Create gist buttons. A public gist is visible to search engines, where a secret gist is only accessible via the exact URL. I prefer the second, but it is a matter of personal preference.

6. This should take you to your new gist. Copy the URL from the URL bar/address bar.

7. Paste it directly in the text of your biostars post. Do not use the hyperlink option in the toolbar, as that will bypass the engine's embedding algorithm.

8. You're done, the biostars engine will take care of embedding.

My gist URL (where I pasted the tab-separated text from the section on formatting tab-delimited text) is:

And when I paste just the URL, this is what happens:

0
Entering edit mode

Is there any size limit for using gists?

0
Entering edit mode

A quick google search says file size should not exceed 100M. Not sure if it applies for github gists as well.

0
Entering edit mode

Dont think there is an easily reachable upper limit but gists should still be used judiciously so as not to make people scroll for days to reach the next post. To my knowledge biostars will not abridge long gists vertically (but will horizontally).

1
Entering edit mode

Ah, so biostars does not squelch long gists - that is good to know! EDIT: All we need to do is add .gist-data { max-height: 500px} to the CSS, and we can override the defaults used by the gist embedder.

2
Entering edit mode
2.9 years ago
Ram 34k

## Formatting text: Strikethrough

TL;DR: Use <s>TEXT TO STRIKETHROUGH</s> to strike-through text.

There are times we wish to change our statements, but retain the context. This often happens when we say something we believe to be true, but we gain some information and then go back and change this statement. This transition can be represented by striking out the previous thought process.

For example, my original statement could be:

I don't think it's possible to perform decimal point calculations in bash.

Someone then replies to it showing how the bc tool can be used for bash calculations, and this leaves me with three options:

• Leave my comment as-is, so readers would need to read the entire thread to know I was mistaken
• Edit my comment, remove all the content and mention bc (Might get confusing owing to a lack of context)
• Retain my old context and add new content, showing that my thinking has evolved, like so:

I don't think it's possible to perform decimal point calculations in bash. EDIT: I was mistaken, see comments below for a description of the bc tool that performs bash calculations.

That is where strikethroughs are useful.

How do we use them? Unfortunately, biostars markdown does not support the strikethrough tokens(~TEXT TO STRIKETHROUGH~) yet. However, it does support the HTML tag that does strikethrough (<s>). By surrounding text with the tag <s>TEXT TO STRIKETHROUGH</s>, we can produce the strikethrough effect like so: TEXT TO STRIKETHROUGH.

Of course, there are many more contexts where strikethroughs are useful, I'll leave it up to you to explore them!

2
Entering edit mode
2.9 years ago
Ram 34k

## Formatting text: Tabular Data

TL;DR: Use cat file.tsv | column -t -s '\t' to output text in a visually pleasing manner, then copy paste to either biostars (using code formatting) or to a github gist. Often, we need to use tabular data in our post content, and machine-parseable tabular content is not always easy on the eyes, as it can look quite mis-aligned. All content pasted below has been subject to code formatting (using the 101010 button in the toolbar, highlighted in the image below) See, for example, a dataset from HGNC: HGNC ID Approved Symbol Approved Name Previous Symbols Synonyms HGNC:5 A1BG alpha-1-B glycoprotein HGNC:37133 A1BG-AS1 A1BG antisense RNA 1 NCRNA00181, A1BGAS, A1BG-AS FLJ23569 HGNC:24086 A1CF APOBEC1 complementation factor ACF, ASP, ACF64, ACF65, APOBEC1CF HGNC:7 A2M alpha-2-macroglobulin FWP007, S863-7, CPAMD5 HGNC:27057 A2M-AS1 A2M antisense RNA 1 HGNC:23336 A2ML1 alpha-2-macroglobulin like 1 CPAMD9 FLJ25179, p170 HGNC:41022 A2ML1-AS1 A2ML1 antisense RNA 1 HGNC:41523 A2ML1-AS2 A2ML1 antisense RNA 2 HGNC:8 A2MP1 alpha-2-macroglobulin pseudogene 1 A2MP  You can see it's messy. Fields are separated by a single TAB character, and while that makes it easy for utilities such as awk or cut, the human eyes cannot view pick out the 5th column in the 7th row without some effort (and risking a wide margin for error). This problem is amplified when the columns are homogeneous, for example, when we're viewing Normalized log2 counts in RNAseq data. gene TCGA.A1.A0SE TCGA.A1.A0SH TCGA.A1.A0SJ TCGA.A1.A0SK TCGA.A1.A0SM TCGA.A1.A0SO TCGA.A1.A0SP TCGA.A2.A04P TCGA.A2.A04Q hsa-let-7a-1 12.6169 12.5752 12.6773 11.8037 12.7343 11.3008 12.4393 12.7181 11.8223 hsa-let-7a-2 13.6169 13.5573 13.6806 12.8041 13.7251 12.3484 13.4698 13.7182 12.8123 hsa-let-7a-3 12.6344 12.5841 12.692 11.8315 12.7827 11.3531 12.4921 12.7756 11.8996 hsa-let-7b 15.4405 15.5052 15.6086 14.5116 16.037 12.8137 15.033 14.0804 13.7427 hsa-let-7c 12.0564 12.8274 11.4256 9.6178 10.8023 11.5737 10.8517 12.7046 11.4696 hsa-let-7d 8.6969 9.3829 8.6306 10.4122 8.2413 10.2243 9.9569 10.8403 9.8383  How can this be made better for display? Do we manually move each column around so they're aligned? No! This is where the column utility is really handy. column is used to format delimiter-separated text to make it pretty. The output is a little more challenging to parse with utilities, but is a lot easier on the eyes. This is how the above snippets look like when formatted by pipeing the content to | column -t -s'\t'

HGNC ID     Approved Symbol  Approved Name                                    Previous Symbols             Synonyms
HGNC:5      A1BG             alpha-1-B glycoprotein
HGNC:37133  A1BG-AS1         A1BG antisense RNA 1                             NCRNA00181, A1BGAS, A1BG-AS  FLJ23569
HGNC:24086  A1CF             APOBEC1 complementation factor                                                ACF, ASP, ACF64, ACF65, APOBEC1CF
HGNC:7      A2M              alpha-2-macroglobulin                                                         FWP007, S863-7, CPAMD5
HGNC:27057  A2M-AS1          A2M antisense RNA 1
HGNC:23336  A2ML1            alpha-2-macroglobulin like 1                     CPAMD9                       FLJ25179, p170
HGNC:41022  A2ML1-AS1        A2ML1 antisense RNA 1
HGNC:41523  A2ML1-AS2        A2ML1 antisense RNA 2
HGNC:8      A2MP1            alpha-2-macroglobulin pseudogene 1               A2MP

And the RNAseq dataset:

gene          TCGA.A1.A0SE  TCGA.A1.A0SH  TCGA.A1.A0SJ  TCGA.A1.A0SK  TCGA.A1.A0SM  TCGA.A1.A0SO  TCGA.A1.A0SP  TCGA.A2.A04P  TCGA.A2.A04Q
hsa-let-7a-1  12.6169       12.5752       12.6773       11.8037       12.7343       11.3008       12.4393       12.7181       11.8223
hsa-let-7a-2  13.6169       13.5573       13.6806       12.8041       13.7251       12.3484       13.4698       13.7182       12.8123
hsa-let-7a-3  12.6344       12.5841       12.692        11.8315       12.7827       11.3531       12.4921       12.7756       11.8996
hsa-let-7b    15.4405       15.5052       15.6086       14.5116       16.037        12.8137       15.033        14.0804       13.7427
hsa-let-7c    12.0564       12.8274       11.4256       9.6178        10.8023       11.5737       10.8517       12.7046       11.4696
hsa-let-7d    8.6969        9.3829        8.6306        10.4122       8.2413        10.2243       9.9569        10.8403       9.8383

Don't these look prettier and easier on the eyes? You can combine this with the gist trick to make your content look better and enable people to download the raw text!


text:
# Tag Info

2

This is not a solution for the question, but to the problem. Instead of adding the inpress keyword to the keyword biblatex field, one can define a new bibcheck and use the check option of \printbibliography. \defbibcheck{inpress}{ \iffieldequalstr{pubstate}{inpress}{}{\skipentry} } and then \printbibliography[check=inpress]

4

The problem is that you need to specify overwrite in the map. Try this: \DeclareSourcemap{ \maps[datatype=bibtex]{ \map[overwrite]{ \step[fieldsource=pubstate, match={inpress}, fieldset=keywords, fieldvalue={inpress}, append] % fieldset=note, fieldvalue={inpress}, append] } } } BUT, Also ...

1

See xstring manual, 3.4 Catcode and starred macros. You have to use the starred version of the test macro, if you want to use macros therein. \renewcommand{\url}[1]{ \StrBehind{#1}{:}[\tempa] \StrBefore{#1}{:}[\tempb] \IfBeginWith*{\tempb}{mailto} {\href{#1}{\nolinkurl{\tempa}}} {\oldUrl{#1}} }

0

To compile xelatex, biber, xelatex in Sublime Text 3 on a per document basis: Select Tools, Build System, LaTeX (I am using LaTeXing for ST). Now add this to the top of your main tex file. %-*- program: xelatex -*- %-*- program: biber -*-` %-*- program: xelatex -*- Use Cmd+B to invoke compiling. To see the results in Skim, go to ...

7

I like your question. Yes, it is possible get the tweet and add to bibliography. I made a 'code' that allow to cite a tweet. Firstly, I am going to explain the idea and after I explain the code. (It is used latex and python) The idea It is possible get a tweet using curl (the string obtained is json format) and the latex package download allow to use ...

0

I'd rather post this is a comment than an answer since it doesn't reference Sublime Text 3, but I don't have the reputation for commenting. Anyway, at least in Texpad on Mac creating a custom build script is very easy. You only need to make a .tpbuild script (which is just a BASH script); #!/bin/bash # run a .Rnw file through knitr first # R -e ...

2

To get rid off the warning you can change the input code to utf8 for your .tex-file. With the following changed MWE I have no warnings or errors from biber and only one warning with the .tex-file (because package filecontents generates this warning). I marked the changes with %!!!!!!!! Your MWE with some changes: \RequirePackage{filecontents} ...

1

Put the biber.exe into MikTex bin path. It is: %MIKTEX DIRECTORY OF INSTALATION%\miktex\bin\ or C:\Users\%USER%\AppData\Roaming\MiKTeX\2.9\miktex\bin EDIT: But if you would like a local texmf tree, it necessary add the local bin directory to the %PATH%. In your case it's not only c:\localtexmf, it is c:\localtexmf\miktex\bin (if necessary, restart the ...

0

I tried the procedure proposed by @cerran by I got the following message, on Win 8, Missing right curly or square bracket at C:\Users\HUMBER~1\AppData\Local\Temp\par-68756d626572746f736869726f6d6f746f\cache-c38a9b05b97a81d339b4947ba00f0aacefe00497\inc\lib/Biber.pm line 334, at end of line syntax error at ...

4

It is possible usingbiblatex, but it is mandatory to use biber as backend. You need to use \addbibresource[location=remote]{*url*} The file .bib in google drive must be public, or accessible by link, and it is necessary change the url from: https://drive.google.com/file/d/XXXXXXXX/edit?usp=sharing to ...

2

According to the documentation of biblatex, the field month should contain a number, not the month name. From section 2.2.2: month field (datepart) The publication month. This must be an integer, not an ordinal or a string. Don’t say month={January} but month={1}. The bibliography style converts this to a language dependent string or ordinal where ...

2

Ok, it was rather simple. The title of a publication contained the \$ sign. Found this when trying to create a mwe. Escaping it like this helped: Title = {Gartner Says Worldwide Enterprise IT Spending to Reach \\$2.7 Trillion in 2012}, It's somewhat embarassing that I didn't try figuring it out like that myself. Thanks for the kick in the butt and maybe ...

2

It is possible to include a bbl created with bibtex instead to biber. Thus use the backend=bibtex option, run bibtex on your system, and then upload the bbl file to arXiv. The second option is to upload all style files required by a recent version of biblatex (but you have to include too many files) as well as the bbl file.

0

In support of the accepted answer, I just wanted to add a test file for reference. Basically, a bibliography can be compiled either with "plain" bibtex, or with biblatex with bibtex backend, or with biblatex with biber backend. In all three cases a .bbl file is produced - but in all three cases the format of the .bbl file is different! \bibitem occurs in ...

5

There's two problems here: 1st: the reason compilation fails is due to wrong sequence of brackets in ({LDA)} in the abstract field of hastie_discriminant_1996. 2nd: the warnings with Biber reported the following issues are due to biber not recognising your page fields as ranges as they should be, according to the biblatex documentation: Range fields ...

Top 50 recent answers are included


text:
y = x3 for values of 1 ≤ x ≤ 25.

In arithmetic and algebra, the cube of a number n is its third power, that is, the result of multiplying three instances of n together. The cube of a number or any other mathematical expression is denoted by a superscript 3, for example 23 = 8 or (x + 1)3.

The cube is also the number multiplied by its square:

n3 = n × n2 = n × n × n.

The cube function is the function xx3 (often denoted y = x3) that maps a number to its cube. It is an odd function, as

(−n)3 = −(n3).

The volume of a geometric cube is the cube of its side length, giving rise to the name. The inverse operation that consists of finding a number whose cube is n is called extracting the cube root of n. It determines the side of the cube of a given volume. It is also n raised to the one-third power.

The graph of the cube function is known as the cubic parabola. Because the cube function is an odd function, this curve has a center of symmetry at the origin, but no axis of symmetry.

## In integers

A cube number, or a perfect cube, or sometimes just a cube, is a number which is the cube of an integer. The non-negative perfect cubes up to 603 are (sequence A000578 in the OEIS):

 03 = 0 13 = 1 113 = 1331 213 = 9261 313 = 29,791 413 = 68,921 513 = 132,651 23 = 8 123 = 1728 223 = 10,648 323 = 32,768 423 = 74,088 523 = 140,608 33 = 27 133 = 2197 233 = 12,167 333 = 35,937 433 = 79,507 533 = 148,877 43 = 64 143 = 2744 243 = 13,824 343 = 39,304 443 = 85,184 543 = 157,464 53 = 125 153 = 3375 253 = 15,625 353 = 42,875 453 = 91,125 553 = 166,375 63 = 216 163 = 4096 263 = 17,576 363 = 46,656 463 = 97,336 563 = 175,616 73 = 343 173 = 4913 273 = 19,683 373 = 50,653 473 = 103,823 573 = 185,193 83 = 512 183 = 5832 283 = 21,952 383 = 54,872 483 = 110,592 583 = 195,112 93 = 729 193 = 6859 293 = 24,389 393 = 59,319 493 = 117,649 593 = 205,379 103 = 1000 203 = 8000 303 = 27,000 403 = 64,000 503 = 125,000 603 = 216,000

Geometrically speaking, a positive integer m is a perfect cube if and only if one can arrange m solid unit cubes into a larger, solid cube. For example, 27 small cubes can be arranged into one larger one with the appearance of a Rubik's Cube, since 3 × 3 × 3 = 27.

The difference between the cubes of consecutive integers can be expressed as follows:

n3 − (n − 1)3 = 3(n − 1)n + 1.

or

(n + 1)3n3 = 3(n + 1)n + 1.

There is no minimum perfect cube, since the cube of a negative integer is negative. For example, (−4) × (−4) × (−4) = −64.

### Base ten

Unlike perfect squares, perfect cubes do not have a small number of possibilities for the last two digits. Except for cubes divisible by 5, where only 25, 75 and 00 can be the last two digits, any pair of digits with the last digit odd can occur as the last digits of a perfect cube. With even cubes, there is considerable restriction, for only 00, o2, e4, o6 and e8 can be the last two digits of a perfect cube (where o stands for any odd digit and e for any even digit). Some cube numbers are also square numbers; for example, 64 is a square number (8 × 8) and a cube number (4 × 4 × 4). This happens if and only if the number is a perfect sixth power (in this case 26).

The last digits of each 3rd power are:

 0 1 8 7 4 5 6 3 2 9

It is, however, easy to show that most numbers are not perfect cubes because all perfect cubes must have digital root 1, 8 or 9. That is their values modulo 9 may be only 0, 1, and 8. Moreover, the digital root of any number's cube can be determined by the remainder the number gives when divided by 3:

• If the number x is divisible by 3, its cube has digital root 9; that is,
${\displaystyle {\text{if))\quad x\equiv 0{\pmod {3))\quad {\text{then))\quad x^{3}\equiv 0{\pmod {9)){\text{ (actually))\quad 0{\pmod {27)){\text{)));}$
• If it has a remainder of 1 when divided by 3, its cube has digital root 1; that is,
${\displaystyle {\text{if))\quad x\equiv 1{\pmod {3))\quad {\text{then))\quad x^{3}\equiv 1{\pmod {9));}$
• If it has a remainder of 2 when divided by 3, its cube has digital root 8; that is,
${\displaystyle {\text{if))\quad x\equiv 2{\pmod {3))\quad {\text{then))\quad x^{3}\equiv 8{\pmod {9)).}$

### Waring's problem for cubes

 Main article: Waring's problem

Every positive integer can be written as the sum of nine (or fewer) positive cubes. This upper limit of nine cubes cannot be reduced because, for example, 23 cannot be written as the sum of fewer than nine positive cubes:

23 = 23 + 23 + 13 + 13 + 13 + 13 + 13 + 13 + 13.

### Sums of three cubes

 Main article: Sums of three cubes

It is conjectured that every integer (positive or negative) not congruent to ±4 modulo 9 can be written as a sum of three (positive or negative) cubes with infinitely many ways.[1] For example, ${\displaystyle 6=2^{3}+(-1)^{3}+(-1)^{3))$. Integers congruent to ±4 modulo 9 are excluded because they cannot be written as the sum of three cubes.

The smallest such integer for which such a sum is not known is 114. In September 2019, the previous smallest such integer with no known 3-cube sum, 42, was found to satisfy this equation:[2][better source needed]

${\displaystyle 42=(-80538738812075974)^{3}+80435758145817515^{3}+12602123297335631^{3}.}$

One solution to ${\displaystyle x^{3}+y^{3}+z^{3}=n}$ is given in the table below for n ≤ 78, and n not congruent to 4 or 5 modulo 9. The selected solution is the one that is primitive (gcd(x, y, z) = 1), is not of the form ${\displaystyle c^{3}+(-c)^{3}+n^{3}=n^{3))$ or ${\displaystyle (n+6nc^{3})^{3}+(n-6nc^{3})^{3}+(-6nc^{2})^{3}=2n^{3))$ (since they are infinite families of solutions), satisfies 0 ≤ |x| ≤ |y| ≤ |z|, and has minimal values for |z| and |y| (tested in this order).[3][4][5]

Only primitive solutions are selected since the non-primitive ones can be trivially deduced from solutions for a smaller value of n. For example, for n = 24, the solution ${\displaystyle 2^{3}+2^{3}+2^{3}=24}$ results from the solution ${\displaystyle 1^{3}+1^{3}+1^{3}=3}$ by multiplying everything by ${\displaystyle 8=2^{3}.}$ Therefore, this is another solution that is selected. Similarly, for n = 48, the solution (x, y, z) = (-2, -2, 4) is excluded, and this is the solution (x, y, z) = (-23, -26, 31) that is selected.

### Fermat's Last Theorem for cubes

 Main article: Fermat's Last Theorem

The equation x3 + y3 = z3 has no non-trivial (i.e. xyz ≠ 0) solutions in integers. In fact, it has none in Eisenstein integers.[6]

Both of these statements are also true for the equation[7] x3 + y3 = 3z3.

### Sum of first n cubes

The sum of the first n cubes is the nth triangle number squared:

${\displaystyle 1^{3}+2^{3}+\dots +n^{3}=(1+2+\dots +n)^{2}=\left({\frac {n(n+1)}{2))\right)^{2}.}$
Visual proof that 13 + 23 + 33 + 43 + 53 = (1 + 2 + 3 + 4 + 5)2.

Proofs. Charles Wheatstone (1854) gives a particularly simple derivation, by expanding each cube in the sum into a set of consecutive odd numbers. He begins by giving the identity

${\displaystyle n^{3}=\underbrace {\left(n^{2}-n+1\right)+\left(n^{2}-n+1+2\right)+\left(n^{2}-n+1+4\right)+\cdots +\left(n^{2}+n-1\right)} _{n{\text{ consecutive odd numbers))}.}$

That identity is related to triangular numbers ${\displaystyle T_{n))$ in the following way:

${\displaystyle n^{3}=\sum _{k=T_{n-1}+1}^{T_{n))(2k-1),}$

and thus the summands forming ${\displaystyle n^{3))$ start off just after those forming all previous values ${\displaystyle 1^{3))$ up to ${\displaystyle (n-1)^{3))$. Applying this property, along with another well-known identity:

${\displaystyle n^{2}=\sum _{k=1}^{n}(2k-1),}$

we obtain the following derivation:

{\displaystyle {\begin{aligned}\sum _{k=1}^{n}k^{3}&=1+8+27+64+\cdots +n^{3}\\&=\underbrace {1} _{1^{3))+\underbrace {3+5} _{2^{3))+\underbrace {7+9+11} _{3^{3))+\underbrace {13+15+17+19} _{4^{3))+\cdots +\underbrace {\left(n^{2}-n+1\right)+\cdots +\left(n^{2}+n-1\right)} _{n^{3))\\&=\underbrace {\underbrace {\underbrace {\underbrace {1} _{1^{2))+3} _{2^{2))+5} _{3^{2))+\cdots +\left(n^{2}+n-1\right)} _{\left({\frac {n^{2}+n}{2))\right)^{2))\\&=(1+2+\cdots +n)^{2}\\&={\bigg (}\sum _{k=1}^{n}k{\bigg )}^{2}.\end{aligned))}
Visual demonstration that the square of a triangular number equals a sum of cubes.

In the more recent mathematical literature, Stein (1971) uses the rectangle-counting interpretation of these numbers to form a geometric proof of the identity (see also Benjamin, Quinn & Wurtz 2006); he observes that it may also be proved easily (but uninformatively) by induction, and states that Toeplitz (1963) provides "an interesting old Arabic proof". Kanim (2004) provides a purely visual proof, Benjamin & Orrison (2002) provide two additional proofs, and Nelsen (1993) gives seven geometric proofs.

For example, the sum of the first 5 cubes is the square of the 5th triangular number,

${\displaystyle 1^{3}+2^{3}+3^{3}+4^{3}+5^{3}=15^{2))$

A similar result can be given for the sum of the first y odd cubes,

${\displaystyle 1^{3}+3^{3}+\dots +(2y-1)^{3}=(xy)^{2))$

but x, y must satisfy the negative Pell equation x2 − 2y2 = −1. For example, for y = 5 and 29, then,

${\displaystyle 1^{3}+3^{3}+\dots +9^{3}=(7\cdot 5)^{2))$
${\displaystyle 1^{3}+3^{3}+\dots +57^{3}=(41\cdot 29)^{2))$

and so on. Also, every even perfect number, except the lowest, is the sum of the first 2p−1/2
odd cubes (p = 3, 5, 7, ...):

${\displaystyle 28=2^{2}(2^{3}-1)=1^{3}+3^{3))$
${\displaystyle 496=2^{4}(2^{5}-1)=1^{3}+3^{3}+5^{3}+7^{3))$
${\displaystyle 8128=2^{6}(2^{7}-1)=1^{3}+3^{3}+5^{3}+7^{3}+9^{3}+11^{3}+13^{3}+15^{3))$

### Sum of cubes of numbers in arithmetic progression

One interpretation of Plato's number, 33 + 43 + 53 = 63

There are examples of cubes of numbers in arithmetic progression whose sum is a cube:

${\displaystyle 3^{3}+4^{3}+5^{3}=6^{3))$
${\displaystyle 11^{3}+12^{3}+13^{3}+14^{3}=20^{3))$
${\displaystyle 31^{3}+33^{3}+35^{3}+37^{3}+39^{3}+41^{3}=66^{3))$

with the first one sometimes identified as the mysterious Plato's number. The formula F for finding the sum of n cubes of numbers in arithmetic progression with common difference d and initial cube a3,

${\displaystyle F(d,a,n)=a^{3}+(a+d)^{3}+(a+2d)^{3}+\cdots +(a+dn-d)^{3))$

is given by

${\displaystyle F(d,a,n)=(n/4)(2a-d+dn)(2a^{2}-2ad+2adn-d^{2}n+d^{2}n^{2})}$

A parametric solution to

${\displaystyle F(d,a,n)=y^{3))$

is known for the special case of d = 1, or consecutive cubes, but only sporadic solutions are known for integer d > 1, such as d = 2, 3, 5, 7, 11, 13, 37, 39, etc.[8]

### Cubes as sums of successive odd integers

In the sequence of odd integers 1, 3, 5, 7, 9, 11, 13, 15, 17, 19, ..., the first one is a cube (1 = 13); the sum of the next two is the next cube (3 + 5 = 23); the sum of the next three is the next cube (7 + 9 + 11 = 33); and so forth.

## In rational numbers

Every positive rational number is the sum of three positive rational cubes,[9] and there are rationals that are not the sum of two rational cubes.[10]

## In real numbers, other fields, and rings

 Further information: cubic function
y = x3 plotted on a Cartesian plane

In real numbers, the cube function preserves the order: larger numbers have larger cubes. In other words, cubes (strictly) monotonically increase. Also, its codomain is the entire real line: the function xx3 : RR is a surjection (takes all possible values). Only three numbers are equal to their own cubes: −1, 0, and 1. If −1 < x < 0 or 1 < x, then x3 > x. If x < −1 or 0 < x < 1, then x3 < x. All aforementioned properties pertain also to any higher odd power (x5, x7, ...) of real numbers. Equalities and inequalities are also true in any ordered ring.

Volumes of similar Euclidean solids are related as cubes of their linear sizes.

In complex numbers, the cube of a purely imaginary number is also purely imaginary. For example, i3 = −i.

The derivative of x3 equals 3x2.

Cubes occasionally have the surjective property in other fields, such as in Fp for such prime p that p ≠ 1 (mod 3),[11] but not necessarily: see the counterexample with rationals above. Also in F7 only three elements 0, ±1 are perfect cubes, of seven total. −1, 0, and 1 are perfect cubes anywhere and the only elements of a field equal to the own cubes: x3x = x(x − 1)(x + 1).

## History

Determination of the cubes of large numbers was very common in many ancient civilizations. Mesopotamian mathematicians created cuneiform tablets with tables for calculating cubes and cube roots by the Old Babylonian period (20th to 16th centuries BC).[12][13] Cubic equations were known to the ancient Greek mathematician Diophantus.[14] Hero of Alexandria devised a method for calculating cube roots in the 1st century CE.[15] Methods for solving cubic equations and extracting cube roots appear in The Nine Chapters on the Mathematical Art, a Chinese mathematical text compiled around the 2nd century BCE and commented on by Liu Hui in the 3rd century CE.[16]

## References

1. ^ Huisman, Sander G. (27 Apr 2016). "Newer sums of three cubes". arXiv:1604.07746 [math.NT].
2. ^ "NEWS: The Mystery of 42 is Solved - Numberphile" https://www.youtube.com/watch?v=zyG8Vlw5aAw
3. ^ Sequences A060465, A060466 and A060467 in OEIS
4. ^ Threecubes
5. ^ n=x^3+y^3+z^3
6. ^ Hardy & Wright, Thm. 227
7. ^ Hardy & Wright, Thm. 232
8. ^
9. ^ Hardy & Wright, Thm. 234
10. ^ Hardy & Wright, Thm. 233
11. ^ The multiplicative group of Fp is cyclic of order p − 1, and if it is not divisible by 3, then cubes define a group automorphism.
12. ^ Cooke, Roger (8 November 2012). The History of Mathematics. John Wiley & Sons. p. 63. ISBN 978-1-118-46029-0.
13. ^ Nemet-Nejat, Karen Rhea (1998). Daily Life in Ancient Mesopotamia. Greenwood Publishing Group. p. 306. ISBN 978-0-313-29497-6.
14. ^ Van der Waerden, Geometry and Algebra of Ancient Civilizations, chapter 4, Zurich 1983 ISBN 0-387-12159-5
15. ^ Smyly, J. Gilbart (1920). "Heron's Formula for Cube Root". Hermathena. Trinity College Dublin. 19 (42): 64–67. JSTOR 23037103.
16. ^ Crossley, John; W.-C. Lun, Anthony (1999). The Nine Chapters on the Mathematical Art: Companion and Commentary. Oxford University Press. pp. 176, 213. ISBN 978-0-19-853936-0.


text:
# Start a new discussion

## Not signed in

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

## Site Tag Cloud

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

1. I am planning to write a few things about Picard groupoids. For this purpose, I have removed a couple of redirects from Picard 2-group, added a new one which is a bit more precise, and tweaked the beginning of this page slightly. Feel free to edit further; I basically just wished to free up the page Picard groupoid.

2. I am also attempting to tweak all existing links to Picard groupoid appropriately.

3. Hopefully now done: Deligne’s theorem on tensor categories, Picard scheme, geometry of physics – superalgebra, super vector space, invertible object. At the latter, I removed the reference to Picard groupoid, as I wish to reserve this for a slightly different notion. If someone objects, just raise it, I am sure we can find some solution; for now, I am just clearing the way to actually write something at Picard groupoid which does not contradict an earlier reference.

4. Made a beginning at Picard groupoid now.

5. Added a mention that they model stable homotopy 1-types. Obviously references and a proof could be given. I would be interested to know if the invertibility criterion can be taken to be strict (it is known that everything else can be).

6. Added a paragraph to symmetric monoidal 2-category to give the strictest possible definition (which is very easy, of course).

• CommentRowNumber7.
• CommentAuthorRichard Williamson
• CommentTimeMay 22nd 2017
• (edited May 22nd 2017)

At Picard groupoid, I have now added a few 2-categorical considerations which show that the homotopy category of the category of Picard groupoids is additive. I have written this part rather concisely. In particular, the facts that I use, which are very basic 2-category theory, do not appear as far as I know on the nLab; it would be nice if someone would like to add them. Anyone is very welcome to elaborate on what I have written.

What I am actually interested in here is outlining a proof that the homotopy category of Picard groupoids is triangulated, and in fact moreover ’4-angulated’, in the sense of the higher triangulated categories of Maltsiniotis. These observations are, as far as I know, new. I will probably transfer them to some kind of paper if they hold up, but for now I’ll probably work here, off and on.

• CommentRowNumber8.
• CommentAuthorUrs
• CommentTimeMay 22nd 2017

Could you say again which changes you are referring to in #3? I checked super vector space and some others, and the system does not show any changes to the text. Did you change redirects at these entries?

7. Ah, sorry, I thought that it would show up in the diff. Basically nothing should be changed at all from a reader’s point of view: no text should be changed, and the page which ’Picard groupoid’ links to at super vector space etc should still be the same. Because I removed a redirect for ’Picard groupoid’ from Picard 2-group, and replaced it by a redirect for ’Picard groupoid of a monoidal category’, it was necessary for me to change ’Picard groupoid” with square brackets around it to ’Picard groupoid of a monoidal category|Picard groupoid’ with square brackets around it at some pages.

The only case where I have changed a little content is at invertible object and Picard 2-group.

• CommentRowNumber10.
• CommentAuthorUrs
• CommentTimeMay 22nd 2017
• (edited May 22nd 2017)

Thanks, now I understand what you are doing. That’s good. But so I have added a disambiguation line at the beginning of the new Picard groupoid, saying

This page considers Picard groupoids in themselves. For the concept of Picard groupoid in a monoidal category, see there.

Also I added at the bottom a “Related concept” seciton with a pointer to 2-group

8. Nice, thanks!

• CommentRowNumber12.
• CommentAuthorUrs
• CommentTimeMay 22nd 2017

I suppose we should still comment on the fact that some people take “Picard groupoid” to imply symmetry (as on your page) and others do not (as on mine).

This inconsistncy seems to pervade the literature. For instance in this MO discussion the first answer takes it without symmetry, the second with symmetry.

(I won’t do any further editing right now. I need to call it quits.)

9. I also will not do further editing tonight. Yes, adding remarks sounds like a good plan. I am fine with attempting to establish some terminology; say ’abelian Picard groupoid’ or ’symmetric Picard groupoid’ for the notion I am writing of. Just let me know (or feel free to edit it in).

• CommentRowNumber14.
• CommentAuthorUrs
• CommentTimeMay 23rd 2017

Yes, please add some remarks like this. Also regarding the strictness that you impose.

• CommentRowNumber15.
• CommentAuthorDavid_Corfield
• CommentTimeMay 23rd 2017

Formally, we can obtain it by truncating? the 2-category of Picard groupoids, namely identifying all 1-arrows which are 2-isomorphic, and throwing away the 2-arrows.

I changed truncating to decategorifying.

10. Thanks David! I have added a couple of small sections at decategorification. There were are a couple of typos in redirects at Ho(Top), which I corrected; I hope that this does not break anything (I am assuming that nobody has used these redirects, since presumably they would in that case have corrected them).

I have not yet found time to add the remarks that you ask for, Urs. If anyone wishes to do so in the meantime, they are welcome.

• CommentRowNumber17.
• CommentAuthorJanPulmann
• CommentTimeSep 27th 2019
Hi,
is the Picard 2-group really a full subcategory? A weak 2-group, seen as a monoidal category, should only have invertible morphisms, as we discussed at https://ncatlab.org/nlab/show/2-group#weak_groups
Thanks!
• CommentRowNumber18.
• CommentAuthorUrs
• CommentTimeSep 28th 2019
• (edited Sep 28th 2019)

Thanks for catching this, I have fixed it now to “…core of its full subcategory…”.

It is true that a category with groupal monoidal structure is automatically a groupoid. But if we pass to the full subcategory on the tensor-invertible objects in any monoidal category, the result is not yet a groupal monoidal category, and we need to further restrict to the invertible morphisms to make it one.


text:
1 comment

• Gurobi Staff

Yes, using an indicator is the right way to go. And it is very easy, you just need to invert the direction of the indicator. Instead of

f_r > 0 -> i_r = 1

you would enforce

i_r = 0 -> f_r <= 0

This is mathematically equivalent, and it fits to how indicators in Gurobi are defined.


text:
Or: how Google has a nice library for optimization problems, but the documentation kinda sucks

Resources

The problem statement, the datasets, this jupyter notebook can be found here

The challenge

Here is a summary of the challenge proposed for the first round of hashcode 2017, a more in depth explanation can be found in the problem pdf

It is given a net, with a datacenter, a series of cache servers, and a series of clients (or endpoints) connected to the datacenter and to 0 or more cache servers. each connection between a client and a cache/datacenter has a constant latency, and one cache server can be connected to one or more clients.

In the datacenter there are some videos, each having a fixed dimension, available to all clients.

Having a list of request for a video from a client, what is the best way to cache these video in the cache servers? to score a solution one sums the time saved for each request, and divides by the total number of requests

My approach

I took the road of the optimization of an integral problem: I framed the problem in a mathematical view, with a linear function to maximize (the scoring function), a set of linear constrain to describe the problem, and a set of variables that can only assume integer values. Given this formulation, there are well known algorithms that operate on the variable to find the best solution possible for the original problem.

Google has a collection of those algorithms under this library: Google Optimization Tools Documentation is a bit lacking, and usage is a bit difficult without a basic knowledge of the subject. On the plus side it comes with a python binding, and this greatly helps in a jupyter notebook

Notes

I did implement a complete solution, but I cannot compute the solution beyond the smallest dataset because this approach is very taxing in memory requirement and time complexity, I believe the general algorithm is O(n^4).

In this problem N is mostly the number of requests, as this usually dwarfs the number of videos and the number of caches. Each cache generates only a constrain with a cardinality of the number of videos, while each request generates a constrain of costant cardinality for each cache connected to the request’s endpoint.

I think a mixed heuristic approach could provide with a great score while mantaining a very low computational cost. One possibility could be to sort the request in order of descending profitability, and to generate an optimal solution using only at most k of the most profitable requests. Found a solution, a new problem can be formulated by prepopulating the caches with this solution and a new subsets of the unused requests, to compute a new improved (but not optimal) solution, that can be used in a new iteration util all the caches are full, or a iteration threshold is achieved.

Techical Note

Google Optimization Tools is a c++ library that has to be compiled. Under linux it’s a simple make install, so this should not be a problem.

Note: Here i use the MPI solver. The CP solver can be used in the same way the mip solver is used in through this notebook. the only difference is in the instantiation, done with these calls:

# Instantiate a CP solver.
parameters = pywrapcp.Solver.DefaultSolverParameters()
solver = pywrapcp.Solver("simple_CP", parameters)
and the fact that the decision vars have to be collected in a list to be passed to a decision tree
#the examples used CHOOSE_FIRST_UNBOUND and ASSIGN_MIN_VALUE. obsly no explanation on the meanings "-_-
decision_builder = solver.Phase(decision_vars, solver.CHOOSE_LOWEST_MIN,
solver.ASSIGN_MAX_VALUE)

and the solutions are provided through a collector

# Create a solution collector.
collector = solver.LastSolutionCollector()
for dv in decision_vars:
solver.Solve(decision_builder, [objective, collector])

this page does a good job highlighting the difference of the two approach for this problem, the mip approach is faster but requires more memory

And now for some code

#size is the capacity of the cache in Mb, ID is an integer
class Cache:
def __init__(self, size, ID):
self.size = size
self.ID = ID

#like Cache, size is dimension in Mb, ID is an integer
class Video:
def __init__(self, size, ID):
self.size = size
self.ID = ID

#Endpoint represent a client that generate a request, has an ID, a latency towards the datacenter
#and a list of pairs (Cache, latency) that represents the chaches to which is connected,
#and the latency of this connection
class Endpoint:
def __init__(self, datacenter_latency, caches_latency, ID):
self.ID = ID
self.datacenter_latency = datacenter_latency
self.caches_latency = caches_latency

#A request has a starting endpoint, a target video,
#and a cardinality (how many times the video is requested) represented as an int
class Request:
def __init__(self, quantity, video, endpoint):
self.quantity = quantity
self.video = video
self.endpoint = endpoint

TDD

Before writing the solution function, it’s good to write the verifier for a solution. This will help also to define what we want as a result.

(note: of course i wrote the verifier after i wrote rewrote the solution function) (note: this is far from the best way to write a verifier, i know)

from math import floor
from functools import reduce

#value is the calculated score, res is a map cache:list(video)
#where each cache is paired with the videos it will contain
#requestList is the list of request as given in input to the problem, to compute the score
def verifySolution(value, res, requestList):
#verify that the videos assigned to a cache can fit inside it
print("all the video from the solution fit into the caches: ",
all(
map(lambda x: x[0].size >= sum(map(attrgetter('size'), x[1])),
res.items())))

#compute the score by multiplying each request cardinality with the saved time
#(latency to datacenter minus the lowest latency to a cache containing the video)
#and divinding by the sum of the cardinality of all requests
#(the result is multiplied by 1000 and rounded down as per instructions)
score_l = []
for r in requestList:
dc_l = r.endpoint.datacenter_latency
c_l = r.endpoint.caches_latency
saved_t = r.endpoint.datacenter_latency - min([dc_l] + list(
map(itemgetter(1), filter(lambda x: r.video in res[x[0]], c_l))))
score_l.append((r.quantity * saved_t, r.quantity))

tmp = reduce(lambda a, b: (a[0] + b[0], a[1] + b[1]), score_l)
print("actual score: ", floor(1000 * tmp[0] / tmp[1]))
print("score from the mpiSolver: ", floor(value))

#a nice summary printer
def summaryPrinter(value, res):
print('score: ', value)
for c, vl in res.items():
print('in cache %d are present %s' %
(c.ID,
', '.join(map(lambda x: 'video%d' % (x.ID), vl))))

The interesting Integer Linear Programming bit

Finally the central part. this is the sum of an afternoon of exploring and learning to use the library on this notebook, and a couple of days to debug it/make it usable.

One important bit that i noticed is this: the documentation doesn’t make clear that there are multiple ways to define the problem, and that a problem written for the mpi solver can be almost painlessly (more on this later) converted to a cp solver. It is a rabbit hole, and for sure I haven’t yet discovered the most idiomatic way to input the problem.

from ortools.linear_solver import pywraplp
from operator import itemgetter, attrgetter

def mpiSolver(videoList, cacheList, endpointList, requestList):
# Instantiate a MPI solver. give it a name, and choose the uderling implementation (this is the default, more can be installed)
solver = pywraplp.Solver('Cache allocation problem',
pywraplp.Solver.CBC_MIXED_INTEGER_PROGRAMMING)

#create a matrix of intvar y[cache_i, video_j], and put a constrain on space usage of a cache
#each y can be 1 if video_j is present on cache_i, or 0 otherwise
#cache_video will be a map cache:list(pair(video, IntVar))
cache_video = {}
for c in cacheList:
cache_video_vars = {
#IntVar is what the solver will vary to find a solution. we create it, and use it to define constraints
#it get a range and a name for debug purposes. Note: this name should be unique, otherwise crashes happens
v: solver.IntVar(0, 1, 'v:%d_c:%d' % (v.ID, c.ID))
for v in videoList
}
#Here i'm telling the solver: the size of all the videos you decide to put in the cache should fit into the cache size.
#notice the nice way to express it via operator overloading builtin in the library
#solver.Sum does not suffer from recursion depth limit like the builtin sum (did not investigate the root causes tough)
solver.Sum(
map(lambda x: x[0].size * x[1], cache_video_vars.items())) <=
c.size)
cache_video[c] = cache_video_vars

#request_min_latency is a support intvar that represents for each request
#the minimum latency between all the caches (and datacenter) connected to the endpoint that contains the video
#req_var is a map request:IntVar
req_var = {}
for r in requestList:
dc_L = r.endpoint.datacenter_latency
#here again i use a IntVar. i could use a NumVar to represent a var that can have Real (instead of Int) values
#but this way it's faster, and for this problem the found solution it's fine
#the range is from 0 to the datacenter latency of the request's endpoint
req_min_latency = solver.IntVar(0, dc_L, 'v:%d_e:%d' %
(r.video.ID, r.endpoint.ID))

#the tricky constrain to express as a mathematic disequation is the selection of the lowest latency
#i used slack variables collected in this list, and the Big M tecnique
#with this constrain i want to express that the request's latency is bigger than the caches latency.
#given that in the end i want to maximize the negation of this variable, this set of constrains will assure that
#req_min_latency will assume the value of the smallest latency among the caches that contains its video
min_cache_select = []
for c, c_l in r.endpoint.caches_latency:
#IntVar for video present in this cache
y = cache_video[c][r.video]
#Support IntVar to select the lowest latency among caches
b = solver.IntVar(0, 1, 'e:%d_v:%d_c:%d' %
(r.endpoint.ID, r.video.ID, c.ID))
#Big_M (variation): if video in cache, req_min_latency is tied to this latency,
#otherwise it is tied to the datacenter latency
# b if 1 trasform this costrain in a tautology (so it doesn't matter anymore)
solver.Add(req_min_latency >= c_l + (1 - y) *
(dc_L - c_l) - dc_L * b)
min_cache_select.append(b)

if len(r.endpoint.caches_latency) == 0:
#base case: no cache present or used
#this one is redundant in most cases
b = solver.IntVar(0, 1,
'e:%d_v:%d_dc' % (r.endpoint.ID, r.video.ID))
solver.Add(req_min_latency >= dc_L - dc_L * b)
min_cache_select.append(b)

#Big_M for select: this will ensure that the minimun latency will be chosen, only one 'b' can be 0 in this set
#save the latency var to use it in the objective function
req_var[r] = req_min_latency

#the objective is to maximize the scoring function, and this is tied to the request latency (tied to the presence of a video in a cache)
solver.Maximize(
solver.Sum(
map(lambda r: r[0].quantity * (r[0].endpoint.datacenter_latency - r[1]),
req_var.items())) *
(1000 / sum(map(attrgetter('quantity'), req_var))))

#this is where the magic happens. warning, high memory and hight cpu time usage ahead
solver.Solve()

#finally, return the computed score, and a map cache:list(videos) to represent video's allocation inside the caches
return solver.Objective().Value(), {
c: list(
map(
itemgetter(0),
filter(lambda x: x[1].solution_value() == 1, vl.items())))
for c, vl in cache_video.items()
}

A test dataset

A small example to test the code I’ve written. This is taken from the problem pdf

In the datacenter there are 5 videos, there are 3 caches of 100 mb each, and 2 endpoints connect to the datacenter. Only the first endpoint is connected to all the caches.

Next we have the requests that will decide the score of my solution

videoList = [
Video(ID=0, size=50), Video(ID=1, size=50), Video(ID=2, size=80),
Video(ID=3, size=30), Video(ID=4, size=110)
]
cacheList = [
Cache(ID=0, size=100), Cache(ID=1, size=100), Cache(ID=2, size=100)
]
endpointList = [
Endpoint(
ID=0,
datacenter_latency=1000,
caches_latency=[(cacheList[0], 100), (cacheList[1], 200),
(cacheList[2], 300)]),
Endpoint(ID=1, datacenter_latency=500, caches_latency=[])
]
requestList = [
Request(quantity=1000, video=videoList[3], endpoint=endpointList[1]),
Request(quantity=1500, video=videoList[3], endpoint=endpointList[0]),
Request(quantity=500, video=videoList[4], endpoint=endpointList[0]),
Request(quantity=1000, video=videoList[1], endpoint=endpointList[0])
]

The moment of truth

if all goes well nothing will explode (a lot of things exploded before arriving at this point)

value, res = mpiSolver(videoList, cacheList, endpointList, requestList)
verifySolution(value, res, requestList)
summaryPrinter(value, res)

all the video from the solution fit into the caches:  True
actual score:  562500
score from the mpiSolver:  562500
score:  562500.0
in cache 1 are present video1, video3
in cache 0 are present video1, video3
in cache 2 are present video1, video3

Nice! the execution time for the above cell on my laptop is ~70 ms. In contrast, in the first iteration i implemented the CP solver and i got ~3000 ms of execution time

Notice that for the scoring function only cache 0 is important, has it has the lowest latency to the endpoint. also, if you look at the test dataset you’ll see that video4 is too big to fit in a cache, so it was not considerate for the solution.

now it’s time to test a dataset. Here i implement a function to load a dataset from file (as in the problem specification)

from operator import attrgetter
from itertools import groupby
from functools import reduce

#not the best way to do it
datain = open(filename)
#nice trick to extract formatted input into variables
n_vid, n_endp, n_req, n_caches, size_caches = [
f(i) for f, i in zip([int, int, int, int, int], header.split())
]
cacheList = [Cache(ID=id, size=size_caches) for id in range(n_caches)]
videoList = [
Video(ID=id, size=int(s)) for id, s in zip(range(n_vid), vids.split())
]
endpointList = []
for id in range(n_endp):
dc_lat, c_cach = [f(i) for f, i in zip([int, int], descr.split())]
caches = []
for c in range(c_cach):
c_id, c_lat = [
f(i) for f, i in zip([int, int], cache_descr.split())
]
caches.append((cacheList[c_id], c_lat))
endpointList.append(
Endpoint(ID=id, caches_latency=caches, datacenter_latency=dc_lat))
requestList = []
for _ in range(n_req):
vid, endp, quant = [
f(i) for f, i in zip((int, int, int), req_descr.split())
]
requestList.append(
Request(
quantity=quant,
endpoint=endpointList[endp],
video=videoList[vid]))

#the tricky part: turns out that in the input dataset the requests are not completely aggregated
#by this i mean that there are multiple requests with the same (endpoint,video) pair.
#here i aggregate them, since mathematically the result is the same, and the solver likes it better this way
req_comp = attrgetter('video.ID', 'endpoint.ID')
rsorted=[reduce(lambda r1, r2: Request(video=r1.video, endpoint=r1.endpoint, quantity=r1.quantity+r2.quantity), g) for _, g in groupby(sorted(requestList, key=req_comp), key=req_comp)]

return dict(
caches=cacheList,
videos=videoList,
endpoints=endpointList,
requests=rsorted)

#load the smallest dataset, 78kb

value, res = mpiSolver(small_problem['videos'], small_problem['caches'],
small_problem['endpoints'], small_problem['requests'])
verifySolution(value, res, small_problem['requests'])
summaryPrinter(value, res)

all the video from the solution fit into the caches:  True
actual score:  516557
score from the mpiSolver:  516557
score:  516557.9336347092
in cache 3 are present video10, video1, video5, video2, video4, video24, video16
in cache 2 are present video1, video31, video8, video5
in cache 9 are present video5, video23, video43, video4, video0, video16
in cache 5 are present video13, video10, video8, video0, video81
in cache 0 are present video15, video10, video5, video0, video82, video16, video46
in cache 1 are present video13, video6, video99, video7, video1, video65, video16
in cache 8 are present video10, video2, video3, video0
in cache 6 are present video30, video1, video5, video27, video4, video0, video16
in cache 7 are present video54, video74, video1, video21, video5
in cache 4 are present video17, video32, video3, video4

It works! and only 130 seconds and 60mb to find a solution.

I tried the second dataset and after 5Gb of memory and half hour of computation the end was not in is sight, so it’s pretty safe to say that this way of solving this problem is not particularly viable. Has i wrote at the start of this notebook, a dividi et impera solution, where only a small fraction of the requests are analyzed each time might produce good enough results.

"Chi si estranea dalla lotta è n'gran fiodenamignotta" - Alberto Sordi


text:
# AP Statistics Curriculum 2007 Infer BiVar

(diff) ← Older revision | Current revision (diff) | Newer revision → (diff)

## General Advance-Placement (AP) Statistics Curriculum - Comparing Two Variances

In the section on inference about the variance and the standard deviation, we already learned how to do inference on either of these two population parameters. Now we discuss the comparison of the variances (or standard deviations) using data randomly sampled from two different populations.

### Background

Recall that the sample-variance (s2) is an unbiased point estimate for the population variance σ2, and similarly, the sample-standard-deviation (s) is a point estimate for the population-standard-deviation σ.

The sample-variance is roughly Chi-square distributed:

$\chi_o^2 = {(n-1)s^2 \over \sigma^2} \sim \Chi_{(df=n-1)}^2$

### Comparing Two Variances ($$\sigma_1^2 = \sigma_2^2$$?)

Suppose we study two populations which are approximately Normally distributed, and we take a random sample from each population, {$X_1, X_2, X_3, \cdots, X_n$} and {$Y_1, Y_2, Y_3, \cdots, Y_k$}. Recall that ${(n-1) s_1^2 \over \sigma_1^2}$ and ${(n-1) s_2^2 \over \sigma_2^2}$ have $\Chi^2_{(df=n - 1)}$ and $\Chi^2_{(df=k - 1)}$ distributions. We are interested in assessing $H_o: \sigma_1^2 = \sigma_2^2$ vs. $H_1: \sigma_1^2 \not= \sigma_2^2$, where s1 and σ1, and s2 and σ2 and the sample and the population standard deviations for the two populations/samples, respectively.

Notice that the Chi-Square Distribution is not symmetric (it is positively skewed). You can visualize the Chi-Square distribution and compute all critical values either using the SOCR Chi-Square Distribution or using the SOCR Chi-Square Distribution Calculator.

The Fisher's F Distribution, and the corresponding F-test, is used to test if the variances of two populations are equal. Depending on the alternative hypothesis, we can use either a two-tailed test or a one-tailed test. The two-tailed version tests against an alternative that the standard deviations are not equal ($H_1: \sigma_1^2 \not= \sigma_2^2$). The one-tailed version only tests in one direction ($H_1: \sigma_1^2 < \sigma_2^2$ or $H_1: \sigma_1^2 > \sigma_2^2$). The choice is determined by the study design before any data is analyzed. For example, if a modification to an existent medical treatment is proposed, we may only be interested in knowing if the new treatment is more consistent and less variable than the established medical intervention.

• Test Statistic: $F_o = {\sigma_1^2 \over \sigma_2^2}$

The farther away this ratio is from 1, the stronger the evidence for unequal population variances.

• Inference: Suppose we test at significance level α = 0.05. Then the hypothesis that the two standard deviations are equal is rejected if the test statistics is outside this interval
$H_1: \sigma_1^2 > \sigma_2^2$: If Fo > F(α,df1 = n1 − 1,df2 = n2 − 1)
$H_1: \sigma_1^2 < \sigma_2^2$: If Fo < F(1 − α,df1 = n1 − 1,df2 = n2 − 1)
$H_1: \sigma_1^2 \not= \sigma_2^2$: If either Fo < F(1 − α / 2,df1 = n1 − 1,df2 = n2 − 1) or Fo > F(α / 2,df1 = n1 − 1,df2 = n2 − 1),

where F(α,df1 = n1 − 1,df2 = n2 − 1) is the critical value of the F distribution with degrees of freedom for the numerator and denominator, df1 = n1 − 1,df2 = n2 − 1, respectively.

In the image below, the left and right critical regions are white with F(α,df1 = n1 − 1,df2 = n2 − 1) and F(1 − α,df1 = n1 − 1,df2 = n2 − 1) representing the lower and upper, respectively, critical values. In this example of F(df1 = 12,df2 = 15), the left and right critical values at α / 2 = 0.025 are F(α / 2 = 0.025,df1 = 9,df2 = 14) = 0.314744 and F(1 − α / 2 = 0.975,df1 = 9,df2 = 14) = 2.96327, respectively.

### Comparing Two Standard Deviations (σ1 = σ2?)

To make inference on whether the standard deviations of two populations are equal, we calculate the sample variances and apply the inference on the ratio of the sample variance using the F-test, as described above.

### Hands-on activities

• Formulate appropriate hypotheses and assess the significance of the evidence to reject the null hypothesis that the variances of the two populations, where the following data come from, are distinct. Assume the observations below represent random samples (of sizes 6 and 10) from two Normally distributed populations of liquid content (in fluid ounces) of beverage cans. Use (α = 0.1).
 Sample from Population 1 14.816 14.863 14.814 14.998 14.965 14.824 Sample from Population 2 14.884 14.838 14.916 15.021 14.874 14.856 14.860 14.772 14.980 14.919
• Hypotheses: Ho1 = σ2 vs. $H_1: \sigma_1 \not= \sigma_2$ .
• Get the sample statistics from SOCR Charts (e.g., Index Plot);
 Sample Mean Sample SD Sample Variance Sample 1 14.88 0.081272382 0.0066052 Sample 2 14.892 0.071269442 0.005079333
• Identify the degrees of freedom (df1 = 6 − 1 = 5 and df2 = 10 − 1 = 9).
• Test Statistics: $F_o = {\sigma_1^2 \over \sigma_2^2}=1.300406878$
• Significance Inference: P-value=$P(F_{(df_1=5, df_2=9)} > F_o) = 0.328147$. This p-value does not indicate strong evidence in the data to reject the null hypothesis. That is, the data does not have power to discriminate between the population variances of the two populations based on these (small) samples.

### More examples

• Use the hot-dogs dataset to formulate and test hypotheses about the difference of the population standard deviations of sodium between the poultry and the meet based hot-dogs. Repeat this with variances of calories between the beef and meet based hot-dogs.


text:
How do we evaluate this Dirichlet L-series

In this answer, David Speyer, whose answer is magnificent, states that "The sum $\sum \chi_3(n)/n$ is only slightly less well known; it is $\pi/(3 \sqrt{3})$.", where $\chi_3(n)$ is the character sending 1 mod 3 to 1 , 2 mod 3 to -1 and 0 mod 3 to 0.

How does one calculate this Dirichlet L-function?

Bonus question:Also, is there a way to generalise the methods in David Speyer's answer, at least for when the number alpha is a fundamental unit in a quadratic number ring that is a PID?Can someone explain why the number in the question (namely $2+\sqrt3$) has these miraculous properties (for instance, the region D becomes a fundamental one mod $\Gamma$).All this seems a bit serendipitous to me ( but then again, I'm no expert)

• There is always the possibility to compute $L(0,\chi)$ math.stackexchange.com/a/1683657/276986 $L(0,\chi) = - \frac{1}{3} \sum_{n=1}^2 \chi(n) n = \frac{1}{3}$ and then using the functional equation – reuns Jun 9 '16 at 16:49
• I see Eric Naslund explains a general method for computing $L(1,\chi)$ math.stackexchange.com/a/112925/276986 using the discrete Fourier transform of the character so that it reduces to computing $\displaystyle \sum_{n=1}^\infty \frac{e^{2 i \pi n a / q}}{n}$ for $a = 1 \ldots q-1$ (here $q=3$) – reuns Jun 9 '16 at 16:52
• Take a look at math.stackexchange.com/questions/426325/… – Bogdan Simeonov Jun 9 '16 at 17:03
• Come on, your second question assumes we studied in details David Speyer's 100 lines answer, so try to make it self-contained in a few lines. – reuns Jun 9 '16 at 17:12
• That's exactly why it's difficult to contain in a few lines, but i will try: So firstly, we tried to calculate the integral in the question, which Jim Belk restated as a double sum.Then, we notice that the quadratic form in the denominator actually arose from a particular kind of set of the numbers in $Z(\sqrt3),$ which turns out to be a fundamental domain modulo the set of units, which the number alpha is a generator of.... – Bogdan Simeonov Jun 9 '16 at 17:31

With a similar technique: $$L(1,\chi_2)=\sum_{j=0}^{+\infty}\left(\frac{1}{3j+1}-\frac{1}{3j+2}\right)=\int_{0}^{1}\frac{1-x}{1-x^3}\,dx=\int_{0}^{1}\frac{dx}{1+x+x^2}$$ so: $$\color{red}{L(1,\chi_2)}=\int_{0}^{1/2}\frac{dx}{x^2+3/4}=\frac{1}{\sqrt{3}}\arctan\sqrt{3}=\color{red}{\frac{\pi}{3\sqrt{3}}.}$$


text:
32 questions linked to/from How reassuring is 64-bit (in)security?
331 views

41 views

### Can Trivium ciphertext be decrypted by an adversary if the key is known, but the IV is not?

Suppose that the adversary is able to recover the key of Trivium cipher. But the associated IV is unknown to him. Will he be able to decrypt the ciphertexts without any complexity?


text:
# calculate the volume of h2 gas produced when in dubai

#### EXPERIMENT 30A5: MOLAR VOLUME OF A GAS

1. The volume of the gas at STP is calculated using the coined gas law. 2. The stoichiometry of the reaction (Equation 1) is used to determine the nuer of moles of the gas produced. The mathematical form of the coined gas law is given below: 1 € PV 1 T 1 = P 2 V T 2 Equation 6

#### Can somebody help me to calculate hydrogen gas …

Its compressibility factor is close to unity.Its value of Z at 25 C and 40 bars is about 1.02. So 500 Nm3 of hydrogen at 25 C and 40 bars have a volume 500x (298.15/273.15)x (1.01325/40)x1.02=14.1

#### How many liters of hydrogen gas can be produced as …

2021/4/11· 2K + 2H20 = 2KOH + H2 mols K metal = grams/atomic mass = 22.3/39.1 = 0.570 The equation tells you with the coefficients aht 2 mols K will produce 1 mol H2 gas; therefore, 0.570 mols K will produce0.570/2 mols = ? Then PV = nRT. You know P and n and

#### physical chemistry - How much hydrogen or oxygen will …

For example, z = 2 for hydrogen because it takes two electrons to convert H X + to H X 2 as 2 H X + + 2 e X − ↽ − − ⇀ H X 2. Therefore, for every coulo of charge, we get: µ n = 1 C ( 96.485 k C / m o l) ( 2) = 5.18 µ m o l. of hydrogen gas produced.

#### EXPERIMENT 30A5: MOLAR VOLUME OF A GAS

1. The volume of the gas at STP is calculated using the coined gas law. 2. The stoichiometry of the reaction (Equation 1) is used to determine the nuer of moles of the gas produced. The mathematical form of the coined gas law is given below: 1 € PV 1 T 1 = P 2 V T 2 Equation 6

#### Chemistry Lab Experiment Determination of the Molar Volume of …

Volume of Collected Gas Unknown Corrected Volume of H2 at STP T 1 = _____ K T 2 = 273 K Gas Temperature in kelvins Standard Temperature of Gas in kelvins 5. Calculation of V2: V 2 P 1 V 1 T 2 P 2 T 1 V2 is the Volume of H2 6.

#### Experiment 13: Calculation of the Molar Volume of a Gas at STP and the Ideal Gas …

volume of the gas in the eudiometer (±0.01mL); the height of the column above the level of water (±0.1cm); the barometric pressure (look at board); the temperature of the gas (±0.1 C); the vapor pressure of water at your temperature (chart given) Measure the

#### Baltimore Polytechnic Institute

2014/1/6· NH3 + 02 + H20 + —Ð G H 20 X 33. 2. Calculate the volume of carbon dioxide produced when 259 g of pentane, C5H12 burn. Assume the carbon dioxide is cooled to …

#### Ideal Gas Law Calculator - calculate pressure, volume, …

A versatile Ideal Gas Laws calculator with which you can calculate the pressure, volume, quantity (moles) or temperature of an ideal gas, given the other three. Free online gas law calculator a.k.a. PV = nRT calculator which accepts different input metric units such as temperature in celsius, fahrenheit, kelvin; pressure in pascals, bars, atmospheres; volume in both metric and imperial units cubed.

#### What volume of H2 gas is needed to get 20 litres of …

Answered 3 years ago. N2 + 3H2 = 2 NH3. (Under 200-900 atm,finely divided iron 450-500 temperature and promoter molybdenum ) Using gay lusac gas law , 1 vol of N2 = 20 litres. 3 vol of H2 …

#### Lab: Molar Volume of Hydrogen Gas - BrainMass

Molar volume (L/mol) = (measured volume) ÷ (nuer of moles) To complete this lab you will need to: Calculate the nuer of moles of H2 produced. (Hint: For every mole of zinc used in the reaction, one mole of H2 is produced.) Measure the volume of H2 gas

#### What volume of H2 gas is needed to get 20 litres of …

Answered 3 years ago. N2 + 3H2 = 2 NH3. (Under 200-900 atm,finely divided iron 450-500 temperature and promoter molybdenum ) Using gay lusac gas law , 1 vol of N2 = 20 litres. 3 …

#### Name Lab # 3: Gases Percent Yield of Hydrogen Gas from …

2018/3/22· The nuer of moles of hydrogen gas collected can then be calculated from the ideal gas law: (n= # moles H 2) n = PV (Use PH 2 here, not P total) RT This will give you the experimental # moles of hydrogen gas collected. The

#### Study 57 Terms | Lab Quiz #3 Flashcards | Quizlet

formula to calculate the volume of dry hydrogen gas at standard pressure V1 = (V2P2)/P1 formula to calculate the volume of dry hydrogen gas at standard temperature

#### How to calculate the volume of a gas produced in a …

In most cases, you can assume the gas produced will behave like an ideal gas. If you have the equation of your chemical reaction, use the mass of your limiting reagent to work out the nuer of mole of gas produced. For example. M g ( s) + H C l ( a q) → M g C l 2 ( a q) + H 2 ( g)

#### Solved: Calculate The Volume In Liters Of Hydrogen Gas …

* 2 Na (s) + 2 H2O (l) -----> 2 NaOH (aq.) + H2 (g) From the above balanced equation, 2 mol of Na produces 1 mol of H2 46 g. of Na produces 2 g. of H2 t view the full answer

#### Electrolysis of water calculated as units of kWh/ kg H2?

1998/1/1· If you divide by the H2 generation rate, you end up with the units of (W*h/cm3 H2). Now all you have to do is convert the volume of hydrogen in the denominator to kilograms.

#### How to find corrected volume of H2 — kostenlose …

Zn(s) + 2HCl(aq) → ZnCl2(aq) + H2(g) One can calculate the molar volume of the gas at room temperature and pressure according to the equation: Molar volume (L/mol) = (measured volume) ÷ (nuer of moles) To complete this lab you will need to: Calculate

#### H2(g) and O2(g) , can be produced by the electrolysis of …

So the volume of Hydrogen produced at STP = 3. 6 × 2 2. 4 = 8 0. 6 4 liters. Volume of oxygen produced at STP = 1 . 8 × 2 2 . 4 = 4 0 . 3 2 liters. Answer verified by Toppr

#### Solved: Calculate The Volume In Liters Of Hydrogen Gas …

* 2 Na (s) + 2 H2O (l) -----> 2 NaOH (aq.) + H2 (g) From the above balanced equation, 2 mol of Na produces 1 mol of H2 46 g. of Na produces 2 g. of H2 t view the full answer

#### EXPERIMENT THE IDEAL GAS CONSTANT AND THE MOLAR …

Zn (s) + 2 HCl (aq) Æ ZnCl2 (aq) + H2 (g) You will calculate the ideal gas constant, R, using the ideal gas equation and the experimental values of pressure, volume, temperature and nuer of moles of H2 gas. Calculation of the molar volume ( volume of

#### calculate the volume of h2 gas produced when in dubai

How to calculate the volume of 1 mole of h2 gas at 25 C and ChaCha Answer: The formula for the volume is: V=nRT/P, so V = (1 Calculate the molarity of 1 lit solution of 93% H2SO4 by

#### Hydrogen produced from a hydrolysis reaction was …

Answer to: Hydrogen produced from a hydrolysis reaction was collected over water. The data is compiled in the table. Total volume of H2(g) collected 96.05 mL

#### How To Calculate The Volume Of Compressed …

2016/11/24· To find the volume of gas available from a compressed gas cylinder, apply the Ideal Gas Law (PV = nRT). In a high-pressure cylinder, the volume will be affected by the content''s comprehensibility factor Z (PV = ZnRT). The Ideal Gas Law PV = nRT Where: P is

#### Lab: Molar Volume of Hydrogen Gas - BrainMass

Molar volume (L/mol) = (measured volume) ÷ (nuer of moles) To complete this lab you will need to: Calculate the nuer of moles of H2 produced. (Hint: For every mole of zinc used in the reaction, one mole of H2 is produced.) Measure the volume of H2 gas


text:
# Shrink Wrap Wings !

Discussion in 'Tube and Fabric' started by Greg Mueller, May 22, 2008.

### Help Support HomeBuiltAirplanes Forum by donating:

1. Mar 25, 2017

### lr27

#### Well-Known Member

Joined:
Nov 3, 2007
Messages:
3,341
488
Not so much UV up in Alaska, and not as much heat. Still, I've heard that dacron with latex is indeed durable.

2. Mar 25, 2017

### proppastie

#### Well-Known Member

Joined:
Feb 19, 2012
Messages:
3,963
1,165
Location:
NJ
There are a lot of people that do some amazing things with airplanes and are justifiably proud of their accomplishments. However often we see the initial positive results and never hear anything negative down the road. My experience with Latex paint, and linseed color stain, on my deck/porch is 5 years at the most and looking poorly after 2-3 years in direct sunlight southern exposure. Also the Latex has mold all over it. The color stain would chalk up after the linseed oil evaporated. The good thing about this site is people often reveal problems they have had or heard about and if you question the positive results you might find the aircraft is kept in a temperature controlled hanger. That is a far different story than the aircraft on the asphalt 100 % of the time.

3. Mar 25, 2017

### BBerson

#### Well-Known MemberHBA Supporter

Joined:
Dec 16, 2007
Messages:
12,495
2,525
Location:
Port Townsend WA
You can rent a hangar 10 years for $200 a month ($24000).
Or recover in 5-10 years, it's your choice.
The internal structure might need a thorough rebuild anyway. Tube frames need rust removal, cable replacement etc.
Even aluminum planes outside need new paint at 5 years to look new.

The best option might be an enclosed storage trailer. (\$6000used, good condition)

4. Mar 25, 2017

### Topaz

#### Super ModeratorStaff Member

Joined:
Jul 30, 2005
Messages:
13,963
5,577
Location:
Orange County, California
LOLOLOLOLOLOLOLOL!!!!! Not around here you can't.

5. Apr 11, 2017

### choppergirl

#### Well-Known Member

Joined:
Jan 31, 2015
Messages:
1,606
586
Location:
Choppergirl's Flying Circus ★★☠★★ AIR-WAR.ORG
Cat says, I know a mouse hole....

I found this in my mailbox today from a fellow HBA'er.... I'm going to light it.

It's either an over kill of blue boat vinyl scraps for me to test, or my last post...

All my enemies 'round here, cackle with glee, and cross your fingers.

Last edited: Apr 11, 2017
6. Aug 3, 2017

### Authmion

#### Active Member

Joined:
Oct 25, 2016
Messages:
28
4
Location:
Leland, NC USA
Any word on the testing of this?

7. Aug 3, 2017

### choppergirl

#### Well-Known Member

Joined:
Jan 31, 2015
Messages:
1,606
586
Location:
Choppergirl's Flying Circus ★★☠★★ AIR-WAR.ORG
If anybody wants a sample of this to test, Fred in Wisconsin sent me the pictured roll of 14" blue scraps from his boat trailer build. PM or email me your address and length and I'll mail you a test piece in an envelope, 14"x14" or 14"x28" unless you ask for more. Frame it on a 1'x1' frame if you like and go to town on it, or poke and pull on it like it was tough silly putty.

If you want to know how strong this is and it's qualities, it's almost exactly like this stuff:

I don't know how many mil the soft drink thing is but it may be a 2x-3x thicker, but when in a boat cover sheet you have the surrounding sheet adding strength. It's tough stuff. It will stretch quite a bit before it will tear. I see no serious concern about integrity plummeting just because it gets a hole in it... it's still tough and requires the same amount of force to tear as it did to put a hole through it.

I think the only real concern to me is gluing itself to itself and alluminum. If the aforementioned methods work, I'm good with it for my low speed application. It's not perfect but it has merit worth testing.

The Ugly:

When raw unheated material is cut to 1' strips, and pulled like a rubber band, it will deform each time a little more and stay stretched out. That probably will be the main concern as an aircraft covering. You can touch it up with a heat gun sure back at base but not mid-flight. Stretched material that is loose probably will be prone to flutter more and cause drag and turbulence, which then exacerbates the stretching further in a feedback loop :-/ (?) Note this is just my observations on raw unshrunk material not under tension.. the only tension I'm putting on it is me pulling on it like Taffy.

The Bonus:

It's non-porous, so you literally would not have to dope or paint it at all or mess with any chemicals other than glue. I think some of the fabric covering processes have a slew of nasty chemicals and coatings you have to spray gun mess with and not inhale.

Also, the main attraction, it's 10x cheaper than painted Dacron. 30x cheaper than Oratex.

-

I would like to see a video of it tested side by side with dacron, with weights progressively added then removed and the effects on both measured and observed. I don't have any new Dacron scraps handy or I'd make one.

Last edited: Aug 3, 2017
8. Aug 3, 2017

### Fred in Wisc

#### Well-Known Member

Joined:
Jul 18, 2012
Messages:
84
23
Location:
Milwaukee WI
I've got another observation after having my trailer for a couple years. This stuff is affected pretty strongly by temperature. When it's cold or cool out, mu trailer has a really nice tight wrap job. When it gets hot out, especially in the sun, the material softens and loosens considerably. Maybe the white colored film would be less affected but with the blue the difference is pretty dramatic. Also the tape doesn't shrink and stretch as much as the film, so it loosens up after enough thermal cycles.

I'm real happy with how this has held up for my trailer but I don't think I would use it on flight control surfaces. Maybe on a fuselage or other non- "keep you up in the air so you don't die in a horrible fiery crash" type parts, but no wings and tail use for this guy.

9. Aug 3, 2017

### Authmion

#### Active Member

Joined:
Oct 25, 2016
Messages:
28
4
Location:
Leland, NC USA
So more useful for covering, let say the fuselage of a legal eagle or something where it's typically open. Or just fuselage covering in general. Makes sense. Definitely would be cool to see how the white holds on a wing like structure in differing temps

Actually may be interested in testing. And may know how I can.

I have an Acura Integra, and I always thought a wing on the back would be cool. (Its a dumb ricer thing, but whatever ) I could maybe build a wing like structure, and cover it like this and see what happens. Worse case, I look dumb and we now know lol

10. Aug 7, 2017

### choppergirl

#### Well-Known Member

Joined:
Jan 31, 2015
Messages:
1,606
586
Location:
Choppergirl's Flying Circus ★★☠★★ AIR-WAR.ORG
Comparing the latex against my 30 year old rudder (held vertically, but out in the elements) yellow latex painted Dacron where the Dacron is still "strong" (I can't even put my thumb through it so it was maybe in the shade protected by paint), the old (protected) Dacron is *significantly* stronger than Latex. There is no give to the Dacron. The places covered by rip stop tape... is something else... you want a solid plane that can take a bullet, cover it in ripstop tape everywhere... :-D

Other places where the paint is long gone and it's nothing but hanging white Dacron fabric, the Dacron fails easily to my thumb test, you could even say crumbles... truely showing it's age. Lesson: paint doesn't add really any strength, but it goes a lonnng way to perpetuating Dacron's strength. (we already knew this).

~

Latex probably would be something you might only consider for a very, very slow flying plane or a slow glider or homebuilt hang glider type application, or like fuselage covering where you just want to reduce drag, and it's not critical for holding you up in the air or if things "stretch" or where you don't need the full strength of Dacron.

What is needed is to deflection test an identical length (1 meter x X cm?) strip of them both side by side, and post some numbers... like of how much weight they will bear before failing, how much deflection they can take before they no longer rebound to their former shape, etc.

Dacron would smoke Latex's ass, *but*, you now would have a known alternative with known qualities and limitations to it which you can use when and where you don't need all the strength or cost of Dacron.

I would say the stretchyness of Latex is it's main limitation, and not returning to it's former shape once deformed (unlike a rubber band)... and not it's UV qualities or rip stop protection. You push on it so far, and it returns... but not all the way... or not at all. This happens at a much lower threshold than Dacron.

If temperature changes its stretchiness, you've got another problem there. What happens when you stretch it to a nice tightness in hot weather, and then cold weather comes along and tigthens it even more? And then hot weather returns? Is it now still tight as the first hot weather, or has it not returned and looks like a stretched baggy...

All my opinions above are subjective observations, just playing with the two materials side by side.

Last edited: Aug 7, 2017
11. Aug 7, 2017

### pictsidhe

#### Well-Known Member

Joined:
Jul 15, 2014
Messages:
7,227
2,064
Location:
North Carolina
Latex sheet? That'd cost a pretty penny. Latex paint works fine on many homebuilts, it's probably the budget finishing option of choice. Latex paint actually contains zero latex...

12. Aug 7, 2017

### Dana

#### Super ModeratorStaff Member

Joined:
Apr 4, 2007
Messages:
8,777
3,139
Location:
CT, USA
CG, methinks you misunderstand... nobody's using latex sheet, but many people are using acrylic latex house paint (which actually contains no latex) to paint over fabric for a cheap covering system.

Dana

13. Aug 7, 2017

Joined:
Apr 4, 2007
Messages:
8,777


text:
# Revision history [back]

### Unexpected imdecode error

I wanted to download an image from a given URL. I followed the answer given to a previous question I posted. Here

It works fine on its own, but when I integrated it with Kurento Media Server it gave an error.
There was an unexpected error as follows:

Unexpected error while processing method: /build/buildd/opencv-2.4.8+dfsg1/modules/highgui/src/loadsave.cpp:307: error: (-215) buf.data && buf.isContinuous() in function imdecode_
(Code:-32603, Type:null)

What could be the error?

### Unexpected imdecode error

I wanted to download an image from a given URL. I followed the answer given to a previous question I posted. Here

It works fine on its own, but when I integrated it with Kurento Media Server it gave an error. did not work.
There was an unexpected error as follows:

Unexpected error while processing method: /build/buildd/opencv-2.4.8+dfsg1/modules/highgui/src/loadsave.cpp:307: error: (-215) buf.data && buf.isContinuous() in function imdecode_
(Code:-32603, Type:null)

What could be the error?


text:
# Logarithms can be naughty

Algebra Level 3

If $c = \log_{30}3$ and $d = \log_{30}5$ , then find the value of

$\large \log_{30}8$

×


text:
# How much work would it take to push a 8 kg  weight up a  7 m  plane that is at an incline of  pi / 12 ?

If a body of mass 'm' slides down on an inclined plane of inclination '$\theta$' through a distance 'S', then work done by gravity is $W = \left(m g \sin \theta\right) S$.
$W = \left[8 k g \times 9.8 \frac{m}{s} ^ 2 \times \sin \left(\frac{\pi}{12}\right)\right] \times 7 m$
$\implies W = 142.039 \approx 142$ Joules.