Tuesday
Aug212018

The Eighteen Counts of Paul J. Manafort Jr.

Occasionally I get annoyed by nonspecific media reporting.  I wondered what the eighteen counts against Paul Manafort were, and rather than get that concise information instead I found broad interperted data filterations and distillations.   In other words, spin. 

Ok, there were ?32 or 77? points in the superseding indictment - I'm a lay person so forgive my reading of some of these ?counts? as mere statements of fact even though they may be argued in court, statements I read as  akin to "This really is the Paul Manafort we are looking for" and "IRS is responsible for taxation."   18 counts are brought to the first trial, and that's not so many that a distillation is required:  So here are the indictment counts as I understand them for the first trial:  Counts 1 through 5, 11 through 14 and 24 through 32 of the Superseding Indictment:

(LINK TO UNABRIDGED SUPERSEDING INDICTMENT ORGINAL DOCUMENT HERE:)

(LINK TO 12? COUNT US DISTRICT OF COLUMBIA INDICTMENT HERE)

I encourage you to read and consider the counts in the links above.  My lay persons (and certainly somewhat in error) reading of the counts:

  1. Paul Manafort and Richard Gates served as consultants and lobbyists and acted as illegal unregistered agents of the Government of the Ukraine- for the Party of Regions and the Party Opposition Bloc all formed by Yanukovych who eventually fled to Russia.  Manafort laundered the money through scores of US and foreign Corporations 
  2. hatches a scheme between 2006 and 2015:  take unreported self payments as loans from offshore ?self owned shell? corporation. 
  3. uses this illegal income to purchase ~6 million in real estate properties.  Then secures ~20 million in construction loans to improve the properties. 
  4. Uses illegal income for a lavish life without paying taxes on that income
  5. Conceals flow of 75 million in cash flow from Treasury and Department of Justice
  6. Worked as lobbists for the Ukraine, but perhaps actually against the Ukraine if you follow his client Ukrainian President Yanukovych's money back to Russia and understand Yanukovych is wanted for High Treason by the Ukraine for bringing in Russian troupes to fight fellow ukrainians.  Yanukovych fled the Ukraine and is in Russia.
  7. Owned/Created 34 shell companies to run this scheme
  8. Money is owed to US Treasury
  9. Created 34 shell companies to transfer millions not reported as income used to make purchases
  10. Wire transfers by "offshore entity" were actually Manafort and Gates spending millions without taxation.
  11. Pages of wire transfers resulted in millions in personal gains to Manafort and Gates and they did not pay taxes.
  12. Manafort used these shell companies and made purchases on his behalf but did not report them on his 2012 tax return.
  13. Manaforts tax filings between 2008 - 2014 falsely state he did not have authorty over foreign financial acounts.
  14. Gates tax filing between 2010 and 2013 likewise are false with regard to foreign financial filings. Note dates, Manafort has tax irregularities before Gates.
  15. 2015 Bank Defraud & Conspiriacy, made false statements to multiple bank lenders
  16. Purchase of realestate in Unitied states for benefit of Gates and Manafort with offshore accounts that appeared as loans, thereby liquid income without playing taxes, lying about actual debt, and making it appear illegal income was a loan with tax liability thereby cheating additional taxes owed atop cheated taxes already owed.
  17. False statements to lender(ill gotten realestate misrepresented as second home, not investment, etc).
  18. More fradulent statements to secure property improvement loans (~20 million) for the (~6 million) in ill gotten realestate property.
Sunday
Aug192018

Rigged Witch Hunt

Why would a witch hunt be rigged?  

Let me first suggest witch hunts generally are undertaken for two reasons, (1) To remove an individual that possesses or practices a vulgar trait outside some socially or judicially accepted norm or (2) For political or personal gain by means of over reaction or persecution.  

If the currents of Washinton scandal swirl around witch hunts of class two, in what way does Muller prosper?  I'm a bit dim witted on this point, as his career and political advance at this moment hardly tends toward prospererity especially if said witch hunt is merely rigged lies.  

If the currents of Washinton scandal swirl around rigged witch hunts of class one, where is the over reaction? There is percieved persecution in some quarters, but I see a doggedly persistant, but reluctant, prosecution - not persecution.  And what is that vulgar trait? 

Time will disclose the truth far better than this conjecture, but I'd conjecture Muller has considerable evidence for some vulgar sin against this Nation's laws. And perhaps a lie tweeted and repeated to the point of familiarty amounts to a effort made to seem persecuted, as that is far preferable to being seen as guilty.

Wednesday
Aug082018

Timerainbows with TESS Comet photobomb 

Here's an image field from the TESS observatory looking at several sky objects. 
https://www.youtube.com/watch?v=RnhKBdDanFw

I played with the images a bit and came up with this mathematica code:

pic = Import[
   "https://www.nasa.gov/sites/default/files/thumbnails/image/tess_\
comet_1041_0.gif"];

len = Length[pic]; gpic =
 ColorConvert[#, "Grayscale"] & /@ pic; stack = Table[
   d = ImageDifference[gpic[[loop]], #] & /@ gpic;
  picks[len_, num_, offset_] :=
   Mod[# + offset - 1, num] + 1 & /@ Range[len];
  m = Mean[ImageData[#] & /@ d]; len = Length[d];
  n = Mean[ImageData[#] & /@ d[[picks[41, 82, 1 + loop]] ] ];
  o = Mean[ImageData[#] & /@ d[[picks[41, 82, 41 + loop]] ] ];
  green = Rescale[Clip[n - o, {0, 1}]^.35];
  blue = Rescale[Clip[o - n, {0, 1}]^.35]; red = Image[m];
  out = ColorCombine[{Image[red], Image[green], Image[blue] }], {loop,
    1, 80, 4 }]; Export["timerainbows.gif",stack]

The green red blue lines reveal the position of other deep sky objects moving slowly in the background in timerainbows:  I count at least 9 small fairly obvious background asteroids (on a magnified screen at least) and one obvious big comet.

Really the animation isn't needed to see the timerainbows, one frame alone would work.  Still I find something kind of pleasant about the overall effect


Timerainbows of Nasa's TESS comet pass with background objects outlined

Wednesday
Jul182018

The Black and White Illustrated me

 

 

And the mathematica notebook jumble (so idea mess, sorry: but this post is in good part for me, so I remember how I did this nifty thing in a few years)



 

Friday
Jul132018

Rayon Makes Rust Worthwhile

Rust 1.27 the programming language, I think I like, well,  I like it mostly I guess.  Ownership, borrowing, bracebracket parenthesis <> syntax that chaffes against other computer language conventions.  Getting a for-loop to step is like pulling teeth.  Variable type conversion is formal enough to call it not exactly automatic.  Data abstraction and data structure options are lovely, as best I can tell, so long as you don't yearn for a concurrently accessed, circular dynamically linked lists without begining or end... like "ten million cpu workers weeding god-only-knowns how much ringworld data fields in forever forward marching cycles" - well if that's your thing, Rust might trigger intense emotional responses from time to time.

Cargo, the package manager is well done, and so use it well because of built in feature/function minimalism.  Rust seems lean in file build size.  Compile time optimizations are off by default leading first time users to think rust runs slow. Scope, borrowing and ownership rules are first time user mischief makers - don't worry, soon enough they will be your best friends.  Vector implementations are richly typed*- HA that's a joke, as in you'll do lots of typing- on the keyboard.  Get it?    Maybe that's more confusing than funny,  but I like to think its funny because its true: Let ha_ha : Vec<usize> = Vec::new();  ha_ha.push(1);  ha_ha.push(2);   

But despite no small amount of quirk and sass, Rust feels like the future of computer programming to me.

Why? That rust aims for a systems programming mission trifectia of safe speedy concurrency by almost banning garbage collection, race conditions, segfaults, memory leaks, sloppy variable type conversion and buffer overruns helps.   But those same things also make rust feel like the programming equivalent of wearing stilts - great strides are easy but there are downsides.  So what makes rust loveable?    

In part, the aforementioned loveable mischief makers, powerful strides made following two rules that keep you safe and still the ability to ditch the rules, pretty good compiler feedback, and at least one amazing multi-thread processing crate.        

RAYON!  Rayon is a external crate for rust and is sweet way to multithread.  The only way I could be more impressed would be if it supported both GPUs and CPUs.  Consider the following toy prime finding program (coded by me except for the square root function supplied by users.rust-lang.org/t/integer-square-root-algorithm/13529/13 user Leonardo and displayed beautifully in InteliJ J IDEA with integerated developer enviroment code tweaks with the text tucked under the image:

 


extern crate rayon; use std::time::Instant; use rayon::prelude::*; fn isqrt(num: u32) -> u32 { let r= (num as f64).sqrt() as u32; //float point precision vs integer discrete if r<4096 {return r} // compute root of num and return, large root may have error delta (num/r + r)/2 // so divide num by delta root for anti-delta root, average result & return } } fn prime_b(testprime:u32, primelist:&Vec) -> bool { let limit = isqrt(testprime); //run ordered low to high, no reason to check above square root let mut prime:bool = false; //default assumption is not a prime 'calculation: for i in primelist{ if *i > limit { prime=true; //if i is larger than test limit num must be prime break 'calculation;} //example 7: 7%2 !=0, 7%3 else { if testprime % *i == 0 { //if remainder is 0, testprime is not a prime, break 'calculation; } // break calculation loop } } return prime } fn main() { let mut known_primes:Vec = Vec::new(); known_primes.extend([2,3,5,7,11].iter()); let start_timer= Instant::now(); for _building_knowledge in 1..4 { //knowledge loop splits finding primes and adding them to list of known primes let mut start_at :u32= 1+ &known_primes[&known_primes.len() - 1] ; //start after last prime found let mut block_end :u32= &start_at * &start_at - 1; //for odd prime n, n^2 not prime, n^2 -1 %2 is even ∴ not prime let found_primes:Vec = (start_at..block_end) .into_par_iter() .filter_map(|x| { if prime_b(x,&known_primes) {Some(x)} else {None } } ) .collect(); }//End of building knowledge scope, now found_primes are available for use println!("Multithread {:?}",start_timer.elapsed() ); println!("found {} primes up to a value of {}",known_primes.len(),known_primes[&known_primes.len()-1]); // print!("{{"); for value in known_primes { print!("{}, ",value) }; print!("0 }}") }

 

on my computer my imperfect "start-finish blocks overlap what was I thinking that's not ideal code" finds 9,147,542 primes, up to a prime value of 162,894,161 in just a titch over 6 seconds.  Not bad for a 6 core computer built in 2013.  That's damn fast really. Running the same task on a single cpu takes 46.4 seconds, so rayon provides a 6.8x speedup on 6 cores!

Rayon is super fast, and (range_start..range_stop).into_par_iter().filter_map.(|var| {if function(var) {Some(otherfunction(var))} else {None}  }  ).collect() is a sweet sweet thing.  If you are not a programmer, a for loop is like a fireing squad bringing out one prisoner at a time vs. rust's  firing squad taking down seven in one go.   Rayon is polite too, my machine doesn't act like the cpu's are pegged 100% when the cpu's are actually pegged 100%... rayon respects other cpu tasks and is good at snatching free cycles.  Maybe "no memory garbage collection" plus apple's Mojave grand central dispach keeps the mouse and os acting buttery smooth.   **magical bonus points: the nine million results all seem to be in the right order, I wasn't expecting to be able to avoid a sort after multithreading a prime number search.  Rayon is beautiful for data parallelism and multi - threads.  

Rayon is winning me over to the rust side.  Its all about those great strides.

*a note for beginners like me about types, not keyboard typing:  Type systems just keep the 1's and 0's in computers organized. 0010000 could be a number 64, a "execute return from interupt" command, the letter 'a', or part of something bigger like a memory address or long variable that contains the entire digital contents of the library of congress.  There are more than one way to be organized and tidy, and many computer languages exist solely because someone wanted to find the worst way possible to solve this common but vexing computer problem.

** a differences test shows them to increase in order.   A pipe into mathematica confirms primality and set size.