Coder Social home page Coder Social logo

julian-upc / discrete-geometry Goto Github PK

View Code? Open in Web Editor NEW
12.0 12.0 23.0 50.13 MB

Lecture notes for a class held at Universitat Politècnica de Catalunya

TeX 16.43% C++ 52.83% Makefile 0.38% Python 5.15% MATLAB 0.40% Shell 19.45% Perl 0.07% Java 0.60% C 0.07% Common Lisp 1.99% Haskell 0.31% Mathematica 0.07% Red 0.15% POV-Ray SDL 2.10%

discrete-geometry's People

Contributors

ainizecm avatar aitor-perez avatar albadc avatar alex-alvarez avatar anesantos avatar anna-somoza avatar arnauplanas avatar borjaelizalde avatar cassandradecock avatar cgiron avatar claramateo avatar elisabetburjons avatar gwenaelaurent avatar ideparada avatar ivangeffner avatar julian-git avatar julian-upc avatar lafaillette avatar martirm avatar petarhlad avatar pilukno avatar quimfib avatar ranea avatar timweenink avatar turbodt avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

discrete-geometry's Issues

@elisabetburjons : Sheet 2

Hi Elisabet,

Just some nits to pick in your solutions on Sheet 2:

  1. In problem (1), a face is actually the set of points where the linear form in question achieves equality, given that it is valid for P. So if ax<=b is valid for P, the face defined by (b,a) in homogeneous coordinates would be { x in P : ax = b }. In your notation,
    F_a(P) = P cap { x in R^d : (a,x) = min {(a,y) : y in P } }.
  2. Being Sl_2(Z)-equivalent actually means that P = AQ for some A in Sl_2(Z), so it's a linear transform, not an affine one. The latter would be expressed as saying that P and Q are Aff_2(Z)-equivalent.
  3. You didn't catch the part about metadata being unencrypted.

Best,
Julian

c++ issues

Let's talk about some details in your c++ code.

@lafaillette: Some comments on your code

Congratulations! You wrote some excellent code, and kudos for using c++11. Some minor comments are at 93a1f59 .

However, there are some comments on the larger picture I'd like to make. Above all, I think you should reconsider your choice of programming language for this assignment. You spent an inordinate amount of time reinventing the wheel (Rational class, explicit determinants, etc), when in fact all computations in sight are constant-time (because the size of the matrices is fixed), and so the choice of an efficiency monster like c++ isn't really justified.

So I'd suggest that the next time you find yourself in such a situation, you reach for a higher-level language that allows for type-checking, like the sage framework. I think you'll save yourself a huge amount of development time, when ultimately the performance difference (and thus, sadly, the benefit of using c++) is going to be negligible.

@ideparada: comments on sheet 2

Problem 1

You actually don't prove that the edges of the permutahedron correspond to adjacent transpositions! So you don't really know that the polytope is simple. But otherwise, the exposition is very nice and detailed. Thanks!

Problem 2

Congratulations! You solved the problem. Here is a prize for you:
http://arxiv.org/pdf/math/0406224
However, I missed where you use Pick's Theorem.

Problem 3

Thanks for the nice research! You missed the issue with the unencrypted metadata, though.

@ainizecm: Comments on sheet 2

Hi Ainize,
just some comments on your latex: the scalar product is best written \langle x,y\rangle (and if you want you can define a macro so that you don't have to type that every time).
Moreover, general math operators are defined using, e.g., \DeclareMathOperator{\skel}{skel}. This will give you the correct font and the correct spacing of the symbols around it. In your case, the operator \min is already predefined in latex.

In the part about email with gpg, you missed the issue with unencrypted metadata.

Finally, see the comments on your code in
74f4d46

@ideparada: Comments on code

It would be better to not encrypt your code, because that way we can use github's commenting features to talk about it..

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.