Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add new skew hadamard matrices #34985

Merged
merged 37 commits into from
Feb 24, 2023

Conversation

MatteoCati
Copy link
Contributor

Fixes #34848.

@dimpase
Copy link
Member

dimpase commented Feb 13, 2023

@wdjoyner - you might look at the freshly built docs here: https://deploy-preview-35059--sagemath-tobias.netlify.app/

@dimpase
Copy link
Member

dimpase commented Feb 13, 2023

by the way, for sage.combinat.matrices.hadamard_matrix.normalise_hadamard(H, skew=True) it would be good to have a test of what happens if you feed it a matrix which is not skew (and doesn't get skew by applying the code in the function)

@vbraun
Copy link
Member

vbraun commented Feb 19, 2023

PDF docs don't build

@dimpase
Copy link
Member

dimpase commented Feb 19, 2023

our usual unicode hiccup:

! Package inputenc Error: Unicode character ̌ (U+030C)
(inputenc)                not set up for use with LaTeX.

See the inputenc package documentation for explanation.
Type  H <return>  for immediate help.
 ...                                              
                                                  
l.2927 Publikacije Elektrotehnič
                                  kog fakulteta. Serija Matematika 2 (1992):...

? 
! Emergency stop.
 ...                                              
                                                  
l.2927 Publikacije Elektrotehnič
                                  kog fakulteta. Serija Matematika 2 (1992):...

!  ==> Fatal error occurred, no output PDF file produced!

@dimpase
Copy link
Member

dimpase commented Feb 19, 2023

So this needs yet another \DeclareUnicodeCharacter in src/sage_docbuild/conf.py

@dimpase
Copy link
Member

dimpase commented Feb 19, 2023

I don't know how to fix this in a regular way; i.e. I added

--- a/src/sage_docbuild/conf.py
+++ b/src/sage_docbuild/conf.py
@@ -620,6 +620,7 @@ latex_elements['preamble'] = r"""
     \DeclareUnicodeCharacter{256E}{+}
     \DeclareUnicodeCharacter{256F}{+}
     \DeclareUnicodeCharacter{2570}{+}
+    \DeclareUnicodeCharacter{030C}{\v{c}}              % č
 \fi
 
 \let\textLaTeX\LaTeX

but it had no effect.

Am I missing something, @vbraun ?

@dimpase
Copy link
Member

dimpase commented Feb 19, 2023

hmm, U+030C is not č, it's a modifier which adds this decoration, maybe this is why... Trying replace with č (U+010D)

@dimpase
Copy link
Member

dimpase commented Feb 19, 2023

trying to use xelatex instead of pdflatex now.

@dimpase
Copy link
Member

dimpase commented Feb 19, 2023

@jhpalmieri - have you seen this sort of trouble before? How about switching to xelatex - any objection?

@dimpase
Copy link
Member

dimpase commented Feb 20, 2023

with the last change, it works.
references.pdf

Copy link
Member

@dimpase dimpase left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

there are two ways to get caron-accented characters in Unicode - we must you the one that encodes it as one unicode characater, not two. This is fixed now.

@jhpalmieri
Copy link
Member

@jhpalmieri - have you seen this sort of trouble before? How about switching to xelatex - any objection?

It sounds like this has been resolved, but I'll reply anyway. I've never used xelatex, but if that works better, it's fine with me. Would it be crazy to switch everything to ConTeXt?

@github-actions
Copy link

Documentation preview for this PR is ready! 🎉
Built with commit: f3ac064

@vbraun vbraun merged commit 6de4b9f into sagemath:develop Feb 24, 2023
@mkoeppe mkoeppe added this to the sage-10.0 milestone Feb 24, 2023
vbraun pushed a commit that referenced this pull request Mar 13, 2023
    
<!-- ^^^^^
Please provide a concise, informative and self-explanatory title.
Don't put issue numbers in there, do this in the PR body below.
For example, instead of "Fixes #1234" use "Introduce new method to
calculate 1+1"
-->
### 📚 Description
Added new construction for (non skew) Hadamard matrices of order up to
1000. The only orders <1000 for which no construction is known are 668,
716, 892.
In particular, the following has been changed:
- Added more Williamson type matrices (the way these matrices are stored
has been changed to be more compact)
- Implemented a function to construct non-skew Supplementary difference
Sets, as well as a function to construct Hadamard matrices from these
sets
- Added Miyamoto construction

Note that only commits starting  from
15e1b50 are new, the previous ones
where created in #34985.


<!-- Describe your changes here in detail -->
<!-- Why is this change required? What problem does it solve? -->
<!-- If it resolves an open issue, please link to the issue here. For
example "Closes #1337" -->

### 📝 Checklist

<!-- Put an `x` in all the boxes that apply. -->
<!-- If your change requires a documentation PR, please link it
appropriately -->
<!-- If you're unsure about any of these, don't hesitate to ask. We're
here to help! -->

- [x] I have made sure that the title is self-explanatory and the
description concisely explains the PR.
- [x] I have linked an issue or discussion.
- [x] I have created tests covering the changes.
- [x] I have updated the documentation accordingly.

### ⌛ Dependencies
<!-- List all open pull requests that this PR logically depends on -->
<!--
- #xyz: short description why this is a dependency
- #abc: ...
-->
    
URL: #35059
Reported by: MatteoCati
Reviewer(s): david joyner, Dima Pasechnik
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Implement new orders of skew Hadamard matrices
7 participants