From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 51090 invoked by alias); 2 Jun 2018 07:26:08 -0000 Mailing-List: contact gsl-discuss-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gsl-discuss-owner@sourceware.org Received: (qmail 51079 invoked by uid 89); 2 Jun 2018 07:26:06 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-1.7 required=5.0 tests=AWL,BAYES_00,FREEMAIL_FROM,RCVD_IN_DNSWL_NONE,SPF_PASS autolearn=ham version=3.3.2 spammy=HX-Received:Sat, arrange, wouldn, HTo:U*gsl-discuss X-HELO: mail-ot0-f172.google.com Received: from mail-ot0-f172.google.com (HELO mail-ot0-f172.google.com) (74.125.82.172) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Sat, 02 Jun 2018 07:26:04 +0000 Received: by mail-ot0-f172.google.com with SMTP id n3-v6so31869768ota.5 for ; Sat, 02 Jun 2018 00:26:04 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to:cc:content-transfer-encoding; bh=rWGcboiWun4rl55KyZV0ANvs6tl2mD2pqPbKNBlma8Q=; b=FTk4HGqTp/DY11unAAcluKg6cdes3Nnpmh/lWSjuTwcNO9ztPzBdCbZ6VkxmN/MJD/ aqmFhmnLSzIYmR5g5AHrwSl+qGvzNp6UtXMBDX+u4mOJbgSR95QBb0mT+zaC7Q/lBBae 1SySCmocpHkjh6kcH5yn8oTlpXcLJOsAXVTXGKtzydmN7jgvmpNN31bO3Yzs8pGCl3kx YtFyMV4QQpzjh8AyJERDK5Jd4gafjpPT5qSyTho2lIR9gqCK09L2FMjrT+bIDwWq0sDu zyBUddpCm+vvMgPX90HMEefOuvtJRglTGnHNGy83cf5D9i8UxPw0RcNImjvskMIlvqEy fH6Q== X-Gm-Message-State: ALKqPwcevVER6dp07r18yJiLzW1G5NvMV2iSPr70Gmj7ok4hIYPyqFq4 T6vyJc5nEYRHVsyBjrrdlsbA/YmdDWheTCk+5GpSGocz X-Google-Smtp-Source: ADUXVKKHI2JrtIxyIQ5VYGkgSRNEdOqXYdI7cbNjReEvv87j9iznUIUm/l73xcUW5KG7AsCAdGzJ3QL6sBNYFxaXduY= X-Received: by 2002:a9d:50ad:: with SMTP id b45-v6mr8865471oth.102.1527924361175; Sat, 02 Jun 2018 00:26:01 -0700 (PDT) MIME-Version: 1.0 Received: by 2002:a9d:2d21:0:0:0:0:0 with HTTP; Sat, 2 Jun 2018 00:26:00 -0700 (PDT) In-Reply-To: References: From: Tito Sacchi Date: Sat, 02 Jun 2018 07:26:00 -0000 Message-ID: Subject: Re: intpart module? To: gsl-discuss@sourceware.org Cc: Massimiliano Sacchi Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-SW-Source: 2018-q2/txt/msg00009.txt.bz2 Hello, I understand your doubts about the inclusion of new features into GSL. I think that the combinatoric algorithms related to integer partitions are = of general interest and useful for a wide range of subjects. The fact that many software companies have implemented packages (e.g. Wolfram's Combinatorica [1], Maplesoft's Iterator [2]) for these algorithms for their own programs proves the importance and the general-purpose proper= ty. Among the most common applications: - Young tableaux are useful for solving many basic combinatorial problems. For example, the answer to the question "How many ways are there to arran= ge a group of 25 students into a 5x5 grid such that in every row and every c= olumn their heights are in incresing order (each row/column is independent from each other)?" is greater than 700M, and can be efficiently calculated using the hook-length formula [3]: it corresponds to the number of standard Young tableaux [4] of shape [5, 5, 5, 5, 5]. - Also, they have applications in other fields of mathematics and in physics. By means of the Schur-Weyl duality [5] applied to the joint action of the symmetric group S_k and the general linear group GL(n) of invertible n x n matrices on tensor spaces, using both the hook-lenght formula [3] and the hook-content formula one can obtain the dimensions of the irreducible representations along with their multiplicities of S_k and GL(n). This has many applications in group representation theory, quantum information theory, quantum metrology, and particle physics. The implementation of this wouldn=E2=80= =99t even require (representation) group theory support in the library. For more information see the Wikipedia pages below. [1] http://reference.wolfram.com/language/Combinatorica/guide/Combinatorica= Package.html [2] https://www.maplesoft.com/support/help/maple/view.aspx?path=3DIterator [3] https://en.wikipedia.org/wiki/Hook_length_formula [4] https://en.wikipedia.org/wiki/Young_tableau [5] https://en.wikipedia.org/wiki/Schur%E2%80%93Weyl_duality 2018-05-31 21:16 GMT+02:00 Patrick Alken : > Hello, > > I certainly encourage more people working on GSL! Though keep in mind G= SL > aims to be a general-purpose scientific computing library. I personally > don't work in combinatorics, so its difficult for me to gauge how many > people would benefit / use these new algorithms you propose. If indeed a > large number of users would like to see these algorithms in GSL, then > certainly I would like to add them. However if only a small number of > specialists would be interested, then I would say this work should be made > into an extension library, which is as you say a self-contained external > library which may or may not rely on GSL itself. > > Perhaps as a first step you could give some examples of what kinds of > problems people can solve with these algorithms you are planning to code? > > Patrick > > > On 05/31/2018 01:01 PM, Tito Sacchi wrote: >> >> Greetings, >> >> I=E2=80=99d like to start working on some code on integer partitions, >> combinatorics, and related algorithms >> (Young tableaux, hook lengths...) in a new module that I=E2=80=99d call >> =E2=80=9Cintpart=E2=80=9D (or =E2=80=9Cintparts=E2=80=9D, tell me). >> I have already read the GSL Homepage which says that =E2=80=9Cany new >> functionality is encouraged as >> packages=E2=80=9D, but such module isn=E2=80=99t very specific, and crea= ting a package >> would signify creating a totally >> different library which probably wouldn=E2=80=99t even use any GSL funct= ion >> (could we call it an extension?); >> then we=E2=80=99ll end up with another C library which probably won=E2= =80=99t get >> integrated into GSL, so I thought >> you might be interested in including it directly into the main library >> (obviously after testing ecc.). >> Just let me know if you prefer that I work on the anonymous clone of >> the Savannah repo, or that I >> start a separate project, maybe on GitHub. >> >> Yours sincerely, >> Tito Sacchi > > >