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

Issue while running Main #1

Open
tchataigner opened this issue Aug 27, 2024 · 5 comments
Open

Issue while running Main #1

tchataigner opened this issue Aug 27, 2024 · 5 comments

Comments

@tchataigner
Copy link
Contributor

I received a message from @larskuhtz with the following issue.

I got the reference string data, but ran into some trouble executing the Main program on macos. Is this something you are aware of?

$ ./Main 
dyld[18621]: missing symbol called
Abort trap: 6

I verified that the babybear symbols are in the binar:

$ nm Main | grep 'babybear.*inv'
000000010088bf10 T __cgo_32245f0f4cde_Cfunc_babybearextinv
000000010088bf60 T __cgo_32245f0f4cde_Cfunc_babybearinv
000000010000d904 T _babybearextinv
000000010000e0ac T _babybearinv
0000000100877540 t _github.com/succinctlabs/sp1-recursion-gnark/sp1/babybear._Cfunc_babybearextinv.abi0
0000000100877610 t _github.com/succinctlabs/sp1-recursion-gnark/sp1/babybear._Cfunc_babybearinv.abi0
000000010167cee0 d _github.com/succinctlabs/sp1-recursion-gnark/sp1/babybear._cgo_32245f0f4cde_Cfunc_babybearextinv
000000010167cee8 d _github.com/succinctlabs/sp1-recursion-gnark/sp1/babybear._cgo_32245f0f4cde_Cfunc_babybearinv
@larskuhtz
Copy link
Contributor

I think, this has to do with macos and/or aarch64. Running the program in an arm64 linux container on image I don't get this failure.

Instead, I get the following, which, I assume, is a different issue.

# ./Main 
ignoring uninitialized slice: Vars []frontend.Variable
ignoring uninitialized slice: Vars []frontend.Variable
ignoring uninitialized slice: Vars []frontend.Variable
Verification failed: algebraic relation does not hold

@tchataigner
Copy link
Contributor Author

tchataigner commented Aug 28, 2024

@larskuhtz we are currently into it, this might have to do with macos and whether it's linked via a dylib or a static lib, causing errors. We managed to replicate it but haven't found a fix or identified a specific cause yet. We are looking into it.

@wwared
Copy link
Contributor

wwared commented Aug 28, 2024

@larskuhtz Can you try again with the code in the sphinx-hs branch? Specifically commit c7ebe0a

We think it may fix your issue, can you take a look?

It's not 100% complete yet, but just wondering if you had the same issue or not

@larskuhtz
Copy link
Contributor

@wwared That commit does not seem to include the plonk verifier any more. I can only find a simple "hello world" function.

@larskuhtz
Copy link
Contributor

The issues did not occur not during the build but when running the plonk verifier. I think, the first issue was an issue with dynamically linking the go binary. If it was about the linking the babybear foreign rust functions, it was not because of those symbols missing completely (because nm showed them to be present) but probably some dependent symbol or an issue with ABI compatibility on macOS.

The second issue looks to me like an validation failure with the data in the provided example.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants