Closed marcomass closed 7 years ago
@pp86 is this modification implemented in the compiler?
@akaitoua sorry, I did notice this question. By the way it is not included in the compiler
@akaitoua please, let me know exactly what kind of expression is expected by the low level and I will include it in the compiler
Hello @akaitoua , I need the signature in order to do that.
I will provide it tonight
@pp86, I did the changes to get a function on the ALL and ANY parameters in COVER. @pp86 please check the new branch named CoverParameters and especially the last commit on the new branch called "Flink executed from compiler" (I mistakenly left an old message for this commit).
Hello @akaitoua ,
it is not very clear to me. Take for example the case ANY/2. What should I pass to the lower layer?
@pp86, This is an example on how to call the DAG. DS1.COVER(CoverFlag.COVER, new N{override val n=2}, new ALL{ override val fun: (Int) => Int = (x)=>x/2}, List(), None )
This is equivalent to : COVER(2,ALL/2) Please check the changes that i introduced on the compiler in the link above.
@pp86, if you agree i will merge the branch with the master branch. I tested it and it is working.
@akaitoua @pp86 Is this ready?
@akaitoua @pp86 Hi. I think we need to have this implemented as floor(ALL/k) so that when k=2,, with (ALL+1)/k we always have an integer number above or equal ALL/2 (based on ALL is even or odd); do you agree?
@akaitoua Hello, yes please merge. I forgot to ask before doing the changes XD
@pp86, I did the merge and tried to test. The compiler still does not recognise the division.
Error: Operator COVER at line 2: invalid unnamed parameter 2 , ALL / 2
@akaitoua yes, I did not commit since it was not compiling. I'll do it now. tnx btw!
@akaitoua Ok, looks like it is working now, thanks for the support again.
@marcomass about your comment, i made it supports these two kind of expressions:
@pp86 @akaitoua Ok, thanks. How is it implemented the casting / approximation of the division to the integer value required by the minAcc maxAcc parameters? As floor(ALL/k)?
@marcomass , yes, it is the floor
@pp86 @akaitoua Quanto implementato (ALL / k o (ALL + n) /k) è disponibile anche a livello di API? Se si, è documentato?
Ok. I will add the documentation.
Sent from my iPhone
On 30 May 2017, at 00:49, marcomass notifications@github.com<mailto:notifications@github.com> wrote:
@pp86https://github.com/pp86 @akaitouahttps://github.com/akaitoua Quanto implementato (ALL / k o (ALL + n) /k) è disponibile anche a livello di API? Se si, è documentato?
— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHubhttps://github.com/DEIB-GECO/GMQL/issues/18#issuecomment-304740979, or mute the threadhttps://github.com/notifications/unsubscribe-auth/AQP_637nXwDfCOcm53CvUbcsvetOicaRks5r-0tugaJpZM4M05mX.
issue18.zip Tested and confirmed. See attached query.
Tested by Stefano P (Erlaad) with the following query: DATA = SELECT(biosample_term_name == "K562" AND experiment_target == "ATF3-human") HG19_ENCODE_NARROW_NOV_2016; MATERIALIZE DATA into data; # Includes 3 samples RESULT = COVER(1,ALL/2) DATA; # Expected result of ALL/2: 1 MATERIALIZE RESULT into res; RESULT2 = COVER(1,(ALL+1)/2) DATA; # Expected result of (ALL+1)/2: 2 MATERIALIZE RESULT2 into res2; RESULT3 = COVER(1,(ALL+11)/2) DATA; # Expected result of (ALL+11)/2: 7 (but max is 3) MATERIALIZE RESULT3 into res3;
COVER / SUMMIT / FLAT / HISTOGRAM: Support using mathematical expressions with the ALL keyword as accumulation values for COVER [e.g. B = COVER(1, ALL/2) A;] o Implementation: requires changes at all the levels